CloudDatenverarbeitung/Big DataEntwicklungManagementTests

Im Test: Talend Enterprise Data Integration 5.4.1

Das Talend Administration Center

Kommen wir nun zum Talend Administration Center, dem Herzstück des Produkts. Diese Web-basierte Lösung stellt eine zentrale Stelle zum Verwalten und Überwachen der vorhandenen Jobs dar. Schwerpunktmäßig werfen wir – wie bereits angekündigt – an dieser Stelle einen Blick auf die Highlights “Execution Plans”, “Activity Monitoring Console” (AMC) und Fehlerbehandlung. Anschließend gehen wir aber auch noch auf den allgemeinen Leistungsumfang des Produkts ein.

Execution Plans

Die über das Talend Data Integration Studio erzeugten Jobs lassen sich mit Hilfe des Administration Centers nicht nur auf die im Netz vorhandenen Execution Server verteilen und starten, sondern es ist auch möglich, sie mit Hilfe von Triggern und Zeitplänen automatisch auszuführen. Darüber hinaus bietet Talend Data Integration so genannte Execution Plans an. Diese sorgen dafür, dass sich unterschiedliche Jobs in einer bestimmten Reihenfolge ausführen – also verketten – lassen und dass die zuständigen Mitarbeiter in die Lage versetzt werden, mehrere Jobs parallel einzusetzen. Dazu ist es lediglich erforderlich, einen Execution Plan anzulegen, ihm einen Namen zu geben und die abzuarbeitenden Tasks hinzuzufügen. Danach starten die Benutzer die Execution Plans, genau wie einzelne Jobs, entweder manuell, oder mit Hilfe von Triggern und Zeitplänen.

Das Verketten und parallele Ausführen von Jobs ist in der Praxis besonders nützlich. Dank dieser Funktionalität lassen sich zum Beispiel Daten zunächst parallel aus mehreren Quellen sammeln und später über Verarbeitungsroutinen zusammenfügen und umwandeln.

Die Activity Monitoring Console liefert den Verantwortlichen alle Detailinformationen zu den einzelnen Jobs
Die Activity Monitoring Console liefert den Verantwortlichen alle Detailinformationen zu den einzelnen Jobs

Abgesehen davon bietet Talend auch noch an, den Execution Plans Aufgaben hinzuzufügen, die nur dann durchzuführen sind, wenn der vorherige Task – wie zum Beispiel die Datensammlung – erfolgreich durchgeführt wurde, beziehungsweise, die nur dann aktiv werden, wenn es zuvor zu einem Fehler kam. Jobs können zudem auch selbst andere Jobs aufrufen. Damit stellen die Execution Plans eine sehr leistungsfähige Möglichkeit zum automatisierten Durchführen unterschiedlichster Aufgaben in allen möglichen Szenarien dar, die sich leicht einrichten und verwalten lässt. Im Test ergaben sich bei der Arbeit mit den Execution Plans keinerlei Probleme.

Activity Monitoring Console

Ebenfalls von Interesse ist die Activity Monitoring Console (AMC). Die AMC speichert alle Daten, die sie im Rahmen der Überwachung des Gesamtsystems sammelt, in einer Datenbank ab. Damit sind sie auch zu späteren Zeitpunkten, etwa nach einem Monat, noch verfügbar und ermöglichen das Nachvollziehen der abgelaufenen Aktionen. Im Test verwendeten wir als Datenbank für die AMC ein MySQL-System, das auf einem anderen Server im Netz unter Linux lief.

Die AMC stellt Informationen über die Ausführung von Jobs zur Verfügung, die unter anderem Aufschluss darüber geben, welche Jobs wann gelaufen sind, wie lange sie liefen, welche Nachrichten sie ausgegeben haben und so weiter. Sie bietet auch eine Übersicht über die geloggten Ereignisse und einen Fehlerreport.

Wählen die Mitarbeiter einen Job aus der Liste der gelaufenen Tasks aus, so erhalten sie weitere Details wie zum Beispiel eine Übersicht über die einzelnen durchgeführten Schritte oder auch die “Execution Details”.

Außerdem stellt das AMC auch ein “Meter Log” zur Verfügung, das umfassende Informationen über die innerhalb des ausgewählten Jobs übertragenen Daten liefert. Dazu müssen allerdings während der Job-Entwicklung “tFlowMeter”-Komponenten an passenden Stellen in den Job integriert worden sein, die diese Daten abgreifen und an das Überwachungswerkzeug weiterleiten. Diese Komponenten lassen sich bei Bedarf auch mit Thresholds versehen, die beispielsweise steuern, wann Einträge in der AMC farblich gekennzeichnet werden sollen. Das ergibt unter anderem Sinn, um auf zu hohe Lasten hinzuweisen.

Das Error Recovery Management bietet den zuständigen Mitarbeitern die Option, mit Job-Checkpoints zu arbeiten
Das Error Recovery Management bietet den zuständigen Mitarbeitern die Option, mit Job-Checkpoints zu arbeiten

Verschiedene grafische Elemente stellen Überblicksinformationen zu dem jeweils gewählten Task zur Verfügung. Dazu gehören grafische Darstellungen der Execution Time, der Thresholds oder auch der Zahl der Fehler. Bei Bedarf lassen sich auch mehrere Daten – wie etwa die Ausführungszeiten unterschiedlicher Jobs – in einer Grafik darstellen.

Darüber hinaus umfasst die AMC unter anderem Tortengrafiken, die dazu in der Lage sind, die Zeiten zu visualisieren, die einzelne Job-Komponenten gebraucht haben. Dabei kann es sich zum Beispiel um Komponenten für das Sammeln von Daten oder das Anlegen von Rows in einer Datenbank handeln. Damit das alles funktioniert, müssen die Verantwortlichen allerdings das “Activity Monitoring” für ihr jeweiliges Projekt oder ihren Job im Data Integration Studio aktivieren. Alternativ können sie auch Monitoring Elemente wie die bereits erwähnte “tFlowMeter”-Komponente direkt in das Job-Design einbauen.

Im Test ergaben sich bei der Arbeit mit der AMC keinerlei Schwierigkeiten. Das Sammeln der Daten funktionierte auf Anhieb und die tägliche Arbeit mit der Überwachungslösung läuft sehr einfach ab. Umfassende Filterfunktionen sorgen im Betrieb dafür, dass die zuständigen Mitarbeiter immer nur die Daten zu sehen bekommen, die sie gerade interessieren. Auch die grafischen Darstellungen lassen sich stets an die Anforderungen der Benutzer anpassen.

Error Recovery

Wenden wir uns nun den Funktionen zum Umgang mit Fehlern zu. Talend Enterprise Data Integration stellt zu diesem Zweck “Checkpoints” zur Verfügung, die es den Anwendern ermöglichen, die Ausführung von Jobs an beliebigen Stellen im Code – also nicht notwendigerweise am Anfang – zu starten. Der Sinn dieser Checkpoints liegt darin, Zeit zu sparen, wenn es darum geht, von Fehlern unterbrochene Jobs erneut auszuführen. Die Checkpoints lassen sich über das Data Integration Studio definieren und dann über das Administration Center nutzen.

Dazu stellt das Administration Center die so genannte Error-Recovery-Management-Seite zur Verfügung. Ruft ein User diese auf, so erhält er zunächst eine Liste mit den vorhandenen Jobs. Selektiert er einen davon, so präsentiert ihm das System die dazugehörigen Ausführungsinformationen, wie Startzeit, Job Server und so weiter. Der “Recovery Checkpoints”-Reiter ermöglicht gleichzeitig den Zugriff auf die für den Job gesetzten Checkpoints zusammen mit den dazugehörigen Execution Logs. Wurde der Job mit einem Fehler angehalten, so lässt er sich an gleicher Stelle mit Hilfe des “Launch Recovery”-Befehls vom letzten Checkpoint an erneut ausführen.

Weitere Funktionen des Administration Centers

Gehen wir zum Schluss kurz auf den restlichen Funktionsumfang des Administration Centers ein. Nach dem Login findet sich der zuständige Mitarbeiter in einem übersichtlichen Web-Interface wieder, das auf der linken Seite über eine Menüstruktur verfügt, die es den Administratoren ermöglicht, problemlos sämtliche Funktionen des Werkzeugs aufzurufen. Der erste Menüeintrag unter “Settings” befasst sich mit der Benutzerverwaltung. Er ermöglicht den Verantwortlichen, Benutzerkonten mit verschiedenen Rechten anzulegen, über die die Mitarbeiter dann dazu in der Lage sind, mit der Data Integration-Lösung zu arbeiten. Dabei unterscheidet das Produkt zwischen verschiedenen Benutzerrollen, wie “Administrator”, “Operation Manager”, “Viewer” und “Designer”. Es besteht zusätzlich auch die Option, den Rollen unter “Rights management” einzelne Rechte, wie “Project Visualization”, “CommandLine”, “License Mangement” oder “Project Management Audit Visualization” zuzuweisen und so die Berechtigungen sehr genau festzulegen. Benutzerkonten lassen sich bei Bedarf auch importieren.

Der Job Conductor übernimmt unter anderem das Verteilen, Ausführen und Planen der Jobs
Der Job Conductor übernimmt unter anderem das Verteilen, Ausführen und Planen der Jobs

Unter “Projects” findet die Verwaltung der einzelnen Datenintegrationsprojekte statt. Sie lassen sich hier Anlegen, Duplizieren und Löschen. Darüber hinaus legen die zuständigen Mitarbeiter auch die Autoren der Projekte, den Speicherbereich und ähnliches fest.

Unter “Project authorizations” lassen sich den Projekten Benutzer hinzufügen und “Project references” ermöglicht es den Verantwortlichen, Projekte anzulegen, die von anderen Projekten aus referenzierbar sind. Unter “Locks” finden sich im Gegensatz dazu existierende Lock-Einträge, die die Anwender an gleicher Stelle auch wieder entfernen können. Die Lock-Einträge sorgen dafür, dass nicht mehrere Nutzer gleichzeitig Änderungen an dem gleichen Eintrag durchführen.

An gleicher Stelle greifen die Benutzer auch auf die “Configuration” zu, auf die wir im Rahmen der Installation bereits eingegangen sind und die es ermöglicht, die einzelnen Bestandteile der Data Integration-Lösung einzurichten. Zu diesen Bestandteilen gehören unter anderem die “CommandLine”, die Datenbank, der “Job Conductor”, “SVN”, “Log4j” und vieles mehr.

Die Timeline zeigt den Anwendern, welche Jobs wann mit welchem Ergebnis liefen
Die Timeline zeigt den Anwendern, welche Jobs wann mit welchem Ergebnis liefen

Die übrigen Einträge unter “Settings” ermöglichen das Sichern der Datenbank, die Lizenzverwaltung und das Einrichten von Benachrichtigungen. Letztere lassen sich beispielsweise nutzen, um neue Benutzer automatisch darüber zu informieren, dass ihr Konto eröffnet wurde oder auch um bestehende Anwender über schiefgelaufene Tasks oder verfügbare Patches in Kenntnis zu setzen.

Der zweite Hauptpunkt “Conductor” dient zum Anlegen, Erzeugen, Verteilen, Ausführen, Pausieren, Wiederaufnehmen und Killen von Jobs. Hier sorgen die zuständigen Mitarbeiter folglich für das Deployment der Jobs und stellen sicher, dass sie anschließend ihre Arbeit verrichten. An gleicher Stelle läuft auch die Arbeit mit den “Execution Servern” ab. Dabei lassen sich der Konfiguration neue Server hinzufügen und die jeweils vorhandenen Speicher- und Diskkapazitäten anzeigen. Die bereits erwähnte Verwaltung der “Execution Plans” findet sich ebenfalls unter “Conductor”.

Der “Repository Browser” sorgt dafür, dass die Verantwortlichen die Repositories der einzelnen Projekte durchsuchen können. Dabei sind sie in der Lage, so auf den “Repository Tree View” zuzugreifen, als ob sie mit dem Studio angemeldet wären.

Ebenfalls von Interesse ist das “Monitoring”. Dieser Eintrag umfasst nicht nur die bereits beschriebene Activity Monitoring Console, sondern auch eine “Execution history”, die zeigt, welche Jobs wann ausgeführt wurden, welche Fehler dabei auftraten und ähnliches. Die “Timeline” liefert vergleichbare Informationen, allerdings mit einer grafischen Übersicht, in der fehlerhafte und fehlerfreie Jobs jeweils farblich gekennzeichnet wurden. Unter “CommandLine” findet sich zudem eine Auflistung der aktuellen Aktionen.

Besonders interessant ist der Unterpunkt “Logging”. Rufen die Anwender diesen auf, so erhalten sie eine Dashboard-Seite auf Basis der Log-Analyse-Software “Kibana”. Hier stehen Informationen zu den unterschiedlichen Log-Einträgen (unterteilt nach Log-Leveln wie Error, Warning, Debug und Info) zur Verfügung. Die Anzeige lässt sich auch zeitlich einschränken und eine umfassende Suchfunktion hilft beim Auffinden wichtiger Daten. Darüber hinaus existieren auch eine Timeline und grafische Elemente wie Tortengrafiken, um den aktuellen Systemstatus zu visualisieren. Eine Tabelle mit Nachrichten und Fehlermeldungen hilft ebenfalls beim Zugriff auf die Log-Informationen. Die Dashboards lassen sich jederzeit an die eigenen Bedürfnisse anpassen und es besteht auch die Option, Dashboards zu entfernen und hinzuzufügen.

Die Log-Analyse auf Kibana-Basis
Die Log-Analyse auf Kibana-Basis

Die Punkte “Audit” und “Drools” schließen den Leistungsumfang des Administration Centers ab. Die Audit-Funktion ermöglicht es, Projekte zu auditieren. Dazu sammelt sie Informationen über sämtliche Job-Operationen und überprüft sie daraufhin, ob der Job effizient arbeitet. Sie erzeugt anschließend eine umfassende PDF-Datei mit Daten zu den einzelnen Komponenten. Drools stellt im Gegensatz dazu ein Business Rule Management System (BRMS) dar, mit dem sich Geschäftsregeln definieren, überwachen und verwalten lassen.

Fazit

Talend Enterprise Data Integration konnte uns im Test vollkommen überzeugen. Die Entwicklungsumgebung mit den Komponenten versetzt auch unerfahrene Benutzer in die Lage, komplexe Datenumwandlungsjobs zu konfigurieren. Das Administration Center bietet den Verantwortlichen im Gegensatz zentrale Stelle zum Steuern und Überwachen der Jobs in verteilten Umgebungen. Auch die Fehlerbehandlung kommt nicht zu kurz. Insgesamt hinterließ die Lösung einen sehr leistungsfähigen und vielseitigen Eindruck. Trotz des großen Funktionsumfangs und der hohen Komplexität, ist das Produkt einfach zu bedienen und lässt kaum Wünsche offen. Deswegen verleihen wir ihm die Auszeichnung “IAIT Tested and Recommended”.

[subscribe2]