Basics in Talend Studio
Talend Studio ist ein auf Eclipse basierendes Tool zum Erstellen und Gestalten von Datenintegrations- und Geschäftsprozessen. Damit können daten-affine Anwender mit Hilfe von zahlreichen Komponenten und Konnektoren auf visuelle Art und Weise ihre Datenintegrationsprozesse modellieren. Talend Studio „übersetzt“ dieses graphische Modell in nativen Java-Code, welcher wiederum unabhängig von der Designanwendung ausgeführt werden kann. Talend Studio unterstützt sowohl den traditionellen ETL- (Extract-Transform-Load) als auch den bekannten ELT-Ansatz (Extract-Load-Transform).
In diesem Artikel möchte ich dir ein paar Basic Tipps und Tricks zum Talend Studio geben.
Inhalt
Komponenten verbinden
Es gibt (mindestens) drei Möglichkeiten, wie Du die graphischen Komponenten innerhalb des Talend Studio miteinander verbinden kannst:
Roter Böbbel
Klicke auf den roten Böbbel der Komponente, halte die Maustaste gedrückt und verbinde diese Komponente mit einer Anderen.
Kontext-Menü
Rechtsklick auf die Komponente, die passende Ausgabe auswählen und rüber auf die nächste Komponente ziehen.
Rechts-Klick
Mit der rechten Maustaste auf die Komponente klicken, die Maustaste gedrückt halten und die Verbindung zur anderen Komponente per Drag & Drop herstellen.
Tipps für die tMap-Komponente
AutoMap-Feature
Gerade bei einem sehr breiten Schema mit vielen Spalten kann ein Mapping sehr aufwendig werden. Die Allround-Komponente tMap ermöglicht es Dir daher mit dem AutoMap-Feature Spalten automatisch zu mappen. Das ist sogar möglich, falls die Spalten nur ähnliche Namen haben, in dem ein Fuzzy-Matching verwendet werden kann. Dafür stehen mehrere Algorithmen als Option zur Verfügung.
Type Conversation
Manchmal müssen Datentypen konvertiert werden, z. B. von einer Ganzzahl zu Text oder umgekehrt. Hierzu bietet die tMap-Komponente eine sehr komfortable Möglichkeit, in dem die Option „Enable Auto-Conversion of types“ aktiviert wird. Unterscheiden sich die Datentypen zwischen dem Quell- und Zielschema wird der Datentyp automatisch konvertiert.
Alternativ dazu kannst Du die Komponente tConvertType verwenden. So wird innerhalb des Jobs der Schritt der Datentyp-Konvertierung auch offensichtlich und nicht im Hintergrund in der tMap-Komponente erledigt.
Expression- und Column-Filter
Wie schon erwähnt ist die tMap-Komponente eine echte Geheimwaffe und ein echter Allrounder. Mit dem Expression-Filter kannst Du einen Filter definieren, damit nur die gefilterten Daten in den entsprechenden Ausgang geschrieben werden.
Gerade bei sehr breiten Schemata und sehr vielen Spalten, wird es schnell unübersichtlich beim Mapping. Hier hilft der Column-Filter, mit dem die angezeigten Spalten gefiltert werden können.
Meta-Daten mit Komponenten verbinden
Die Verbindungsinformationen können im Talend Studio zentral im sogenannten „Repository“ verwaltet werden. Wenn Du diese Verbindungsdaten nutzen möchtest, hast du dazu ebenfalls mehrere Möglichkeiten.
Property Type
In der Komponenten-Konfiguration kannst Du den sogenannten Property-Type ändern von Built-In auf Repository und dann das Meta-Daten-Element daraus auswählen.
Drag & Drop 1
Aus dem Repository können die Meta-Daten direkt auf die Zeichenfläche per Drag & Drop gezogen werden. Talend Studio fragt Dich danach, welche Komponente mit diesen Meta-Daten genutzt werden sollen.
Drag & Drop 2
Du kannst auch zuerst eine Komponente aus der Palette hinzufügen und danach ziehst Du die Meta-Daten auf diese Komponente, um die Verbindungsinformationen zu übernehmen.
Komponenten zwischen zwei anderen Komponenten einfügen
Während der Entwicklung kommt es häufiger vor, dass Du eine weitere Komponente in den Datenfluss einbauen möchtest. Das geht sehr einfach, in dem Du die Komponenten auf die Verbindung zwischen den bereits bestehenden Komponenten ziehst.
Oder Du klickst auf die Bezeichnung der Verbindung und gibst den Namen der Komponente über Deine Tastatur ein.
Flow to Iterate
Manchmal muss der Verbindungsfluss unterbrochen werden, um über jede einzelne Zeile der Daten zu iterieren. Das erreichst Du mit der Komponente tFlowToIterate. Hier gilt es zu beachten, dass die Daten nach dem Verbindungsbruch neu übergeben werden müssen. tFlowToIterate bietet dazu eine gute Möglichkeit Out-of-the-Box, jedoch müssen die Daten danach nochmals definiert werden, um in der Iteration genutzt zu werden. Anhand der nächsten beiden Screenshots sollte klar werden, wie das funktioniert.
Unterschied zwischen OnSubjobOK und OnComponentOK
Komponenten können nicht nur mit dem Datenfluss verbunden werden, sondern auch über Trigger. Zwei davon sind OnSubjobOK und OnComponentOK. Doch was genau ist der Unterschied?
- Mit OnSubjobOK startet der Subjob erst dann, wenn der vorherige Subjob komplett abgeschlossen ist.
- Mit OnComponentOK startet der Subjob direkt, wenn die vorherige Komponente
Unterschied zwischen tJava, tJavaRow und tJavaFlex
Mit allen drei Komponenten hast Du die Möglichkeit Java-Code in Deine Integrationsjobs zu integrieren. Doch was genau ist der Unterschied zwischen diesen Komponenten?
tJava wird genutzt, um Java-Code als separaten Subjob auszuführen – zumindest in den allermeisten Fällen. Der Java-Code wird nur einmal ausgeführt, während Du bei tJavaRow den Java-Code für jeden einzelnen Datensatz ausführen kannst. tJavaRow wird häufig als verbindende Komponente verwendet, mit der Du auf den Input-Flow zugreifen kannst. Wenn Du Initialisierungs-Prozesse zu Beginn eines Subjobs verwenden möchtest oder Operationen am Ende des Subjobs ist die Komponente tJavaFlex zu empfehlen.
Hast Du selbst auch schon Erfahrungen mit dem Talend Studio gesammelt? Was sind Deine Erfahrungen damit? Vielleicht hast Du selbst noch weitere Basic Tipps und Tricks. Bitte teile sie mit uns allen über die Kommentarfunktion!