Suche

über alle News und Events

 

Alle News

 

Ein knackiger und kompakter Überblick auf die...

Weiterlesen

Inwieweit lassen sich vorhandene BizTalk Lösungen...

Weiterlesen

Wie kann ein Prozess Monitoring einfach und...

Weiterlesen

Aufzeichnungen und Foliensätze jetzt erhältlich...

Weiterlesen

Stellenanzeige: Wir suchen dringend an unserem...

Weiterlesen

How-to: Unzip Big Data auf dem Azure Fileshare –Part 1

Anforderung: Vor kurzem hatte ich die Anforderung 7z-Archive auf dem Azure Fileshare zu unzippen. Es gab also ein Source-Folder, in dem alle zu entpackenden 7z-Archive und auch andere Dateien lagen.

Um den Überblick nicht zu verlieren waren die Archive unter bestimmten Kundenordnern abgelegt.

Source-Folder Struktur: Data\Kunde

Es sollten nun also alle Archive aus den Dateien gefiltert, entpackt und in den Target Folder gespeichert werden.

TargetFolder Struktur: Unzipped\Kunde

Ebenfalls wichtig zu wissen ist, dass es sehr große Archive waren, die in mehrere Teile aufgeteilt wurden und manchmal mit Passwörtern gesichert waren.

Entpackvorgang, wenn alle Dateien vorhanden:

Entpackvorgang, wenn Dateien fehlen:

Also suchte ich nach einem Framework, das mir genau diese Funktionen bietet…
Ich stieß auf das Framework „SevenZipSharp“ von SquidBox.
Mein erster Test bestand daraus, dass ich versucht lokal einzelnes Archiv, so wie ein großes Archiv das in Teile gesplittet war zu entpacken. Das funktioniert ohne Probleme!

Es wurde also ein SevenZipExtractor erzeugt. Als Übergabeparameter musste der Pfad des Archivs und das Passwort übergeben werden. Beim ExtractArchive werden alle zugehörigen Dateien in den Zielpfad extrahiert.
Im nächsten Schritt sollten also die Dateien vom einen Fileshare-Ordner in den anderen entpackt werden. Um Zugriff auf den Fileshare zu bekommen, nutzte ich das Azure Storage Files Shares Framework. Da man an die Dateien des Fileshares nur anhand eines Streams herankommt, suchte ich im SevenZipSharp Framework nach einer Methode, die genau die gleichen Funktionen bietet, wie beim lokalen Extrahieren.
Ich suchte und suchte und suchte…
Also war Testing angesagt…
Wir versuchten einige Dinge, wie z. B. den UNC Pfad der Datei zu nutzen, oder den Fileshare als Netzlaufwerk einzubinden. Doch nichts funktionierte.
Wir kamen zu dem Entschluss, dass nichts daran vorbeiführt, die Dateien herunterzuladen und diese lokal auf der Maschine, auf der die Azure Function ausgeführt wird, zu entpacken und wieder hochzuladen. Der Workaround sah also folgendermaßen aus:


Als die Funktionalität der Azure Function dafür fertiggestellt war, wurde sie zum finalen Test Deployed und ausgeführt.
Nach fünf Minuten endete die Function im Timeout…
Auch das Erhöhen des Timeouts auf 10 Minuten änderte nichts.
Wie wir das Problem mit dem Timeout gelöst haben, könnt ihr im nächsten Part lesen.
 

Dieser quiTeq-Tipp ist von Nico, QUIBIQ Stuttgart.

Ihre Kontaktmöglichkeiten

Sie haben eine konkrete Frage an uns


 

Bleiben Sie immer auf dem Laufenden


 

Mit meinem "Ja" erkläre ich mich mit der Verarbeitung meiner Daten zur Zusendung von Informationen einverstanden. Ich weiß, dass ich diese Erklärung jederzeit durch einfache Mitteilung widerrufen kann. Bei einem Nein an dieser Stelle erhalte ich zukünftig keine Informationen mehr.

© QUIBIQ GmbH · Impressum · Datenschutz