Konzept für das Handling großer Dateien mit Transconnect

  • Beitrag
    henrik.teuscher
    Teilnehmer
      Hallo,

      wir stehen vor der Aufgabe ein altes Archivierungstool (basierend auf Windows-Batch Scripten und WinRar) abzulösen. Wir sind gerade dabei, die Möglichkeiten von Transconnect zu diesem Thema auszuloten. Eine Zip-Kompression einzelner Dateien bzw. auch ganzer Verzeichnisbäume war als Prototyp in TC schnell realisiert. Leider steigt damit auch die Größe einer Nachricht extrem schnell an und das Testsystem stürzte mit Java – Fehler „Out of Memory“ ab.

      Jetzt ist meine Frage, ob es Möglichkeiten gibt, die Attachments einer Nachricht außerhalb zu händeln? Es erscheint nicht sinnvoll und möglich, die Archivdateien im Attachment einer Nachricht zu halten (und somit auch in der Repo-DB) …

      Mit freundlichen Grüßen

      Henrik Teuscher

       

       

      Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.

      0
      0
    Ansicht von 2 Antworten – 1 bis 2 (von insgesamt 2)
    • Antworten
      Michael Roth
      Teilnehmer
        Eventuell als Tipp:

         

        Wir haben ein ähnliches Problem gehabt, da ein System alle verarbeiteten Dateien (200k+) auf einmal bereitstellt:

        Statt die Daten direkt über die Aufgabe abzuholen läuft zunächst ein LISTFOLDER, um alle Dateien zu listen.
        Dadurch erhalten wir eine Nachricht mit der Struktur
        <ROOT>
        <ITEM…/>
        <ITEM…/>

        </ROOT>

        Anschließen splittet eine Transformation die Daten in Gruppen von je 5 Dateien.
        Die folgende Nachricht hat diese Struktur:
        <ROOT>
        <GROUP>
        <FILE…/>
        <FILE…/>
        </GROUP>
        <GROUP>
        <FILE…/>

         

        Anschließend wird die Nachricht an eine XML Iteration übergeben, die nach dem Knoten GROUP durchgeht.
        Erst innerhalb der Iteration erfolgt die Abholung der Daten und die eigentliche Verarbeitungslogik.

        Dadurch kann ich die Anzahl an Schritten, die mit Anhängen arbeitet und diesen Fehler provoziert klein halten und auch die Anhanggröße recht überschaubar.

         

        Vielleicht hilft Ihnen das als Idee weiter

        Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.

        1
        0
        henrik.teuscher
        Teilnehmer
          Hallo Herr Roth,

          vielen Dank für die Idee! Das sollte die Datengröße einer Transconnect-Nachricht verringern.

          Heute morgen hatte ich noch die Idee, einen neuen Adapter zu entwickeln. Ich würde diesen mal als „zipFile – Adapter/Connector bezeichnen.

          Funktional grob skizziert könnte der so aussehen:

          Der Adapter/Connector schreibt (vlt. auch liest)  dann die Files in neues oder vorhandenes Zip-Archiv repräsentiert durch eine Datei in einem Filesystem. Diese könnte dann (fast) beliebig groß sein. (in unserem Fall >100GB!)

          Ich könnet mir vorstellen, das man diese Funktionalität relativ einfach „nachrüsten“ könnte …
          Java unterstützt das ja problemlos. (z.B. die Klasse: java.util.zip)

          Da ich das neue Connector-SDK nicht kenne, würde ich die Veröffentlichung abwarten. Vielleicht kann ja ein „Insider“ hier mal die Machbarkeit der Idee beurteilen.

           

          Mit freundlichen Grüßen

          Henrik Teuscher

           

          Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.

          0
          0
        Ansicht von 2 Antworten – 1 bis 2 (von insgesamt 2)
        • Du musst angemeldet sein, um auf dieses Thema antworten zu können.