TDWI HOT TOPIC ETL MIT HADOOP INTELLIGENT BESCHLEUNIGEN // von STEPHEN SWOYER Wie können Unternehmen von dieser Technologie profitieren, ohne dass sie dazu gleich einen Hadoop-Experten brauchen? Sie können nie über zu viele Hadoop-Kenntnisse verfügen - ganz gleich, ob Sie Hadoop-Experte, Hadoop-Neuling oder potenzieller Hadoop-Anwender sind. Die Implementierung von Hadoop erfordert äußerst spezifisches Expertenwissen – angefangen bei Programmierfertigkeiten in Java, Pig, Python, HiveQL und anderen Sprachen. Erfahrung mit relationalen Datenbanken und Datenbankmanagement sind ebenfalls nicht fehl am Platz. Genau das ist laut Mark Madsen, Chef-Berater einer Führungskraft bei der Unternehmensberatung Third Nature Inc., das Problem. Zum Einen, so Madsen, stehen für Hadoop nur eingeschränkt Ressourcen zur Verfügung, da es einfach nicht genügend IT-Experten mit HadoopKenntnissen gibt Zum Anderen, jedoch weniger entscheidend, haben Java-, Pythonund HiveQL-Programmierer oft nur wenig Erfahrung mit relationalen Datenbanken. Dies ist besonders dann problematisch, wenn Hadoop und MapReduce für herkömmliche Datenmanagementaufgaben wie ETL eingesetzt werden “Es ist die Sache der Programmierer, den richtigen Code zu schreiben. Das ist ein Vorteil von SQL und der Datenverarbeitungsarchitektur der Datenbank. Pig-Script ist ein Versuch der deklarativen Programmierung für Hadoop, jedoch mit dem Nachteil, dass die Optimierung schwierig ist“, so Madsen gegenüber TDWI” DILEMMA ODER DEUS EX MACHINA? Einige Anbieter können dieses Problem lösen oder zumindest deutlich mildern. Nehmen Sie beispielsweise Pentaho Inc., ein Entwickler von Open Source-BI (Business Intelligence) und Datenintegrationstechnologien. Dank der Unterstützung für „Kettle“, ein bekanntes Open SourceETL-Projekt, kann Pentaho im Rahmenals Teil seiner umfassenden Geschäftsanalyseplattform BI-Plattform ein Unternehmensleistungsstarkes ETL-Tool anbieten – Pentaho Data Integration (PDI). Aufgrund der Java-basierten Architektur von PDI hat Pentaho hier eine echte Killer-App für die Integration von Big-Data. Laut Dave Henry, Senior Vice President of Enterprise Solutions bei Pentaho, sind Hadoop und MapReduce für Big-Data-ETL genau zugeschnitten. Mit „Big-DataETL“ meinen Henry und Pentaho wirklich große Datenmengen “Hadoop-ETL ist nur dann sinnvoll, wenn Sie richtig große Datenmengen verarbeiten – dutzende Terabyte. Wenn jemand sagt, Wir haben 50 GB Daten und möchten Hadoop verwenden‘, antworten wir: Nicht notwendig. Wenn Anwender dutzende oder hunderte verarbeiten möchten, dann zeigt sich die volle Leistungsfähigkeit von Hadoop“, so Henry. Auf dem Papier scheint es so, als ob bei Hadoop-ETL dieselben Einschränkungen gelten, die bei Hadoop immer mit von der Partie sind: Sie müssen die erforderlichen Vorgänge in Java oder Pig-Script programmieren können. Das ist nicht einfach nur kompliziert. Wie Madsen von Third Nature warnt, kann dies auch zu suboptimalen Ergebnissen führen, besonders wenn der entsprechende Programmierer nicht über ausreichend Erfahrung mit RDBMS-Konzepten und -Methoden verfügt. Jedoch tritt dieses Problem, so Henry, mit Pentaho Data Integration gar nicht erst auf, da dessen DI-Modul bereits in Java geschrieben ist. Anders gesagt, Pentaho Data Integration ist darauf ausgelegt, in einem Hadoop-Grid oder -Cluster ausgeführt zu werden PARALLELISIEREN VON PDI-JOBS Hinsichtlich Hadoop bemerkt Henry, dass die Software einen PDI-Job ebenso parallelisieren und ausführen kann, wie jeden anderen JavaWorkload auch. Anstelle der expliziten Zuordnung und Reduzierung von Operationen im Java-Code oder Pig-Script, verfügen Sie über ein optimales ETL-Prozess-Designtool, das Sie mit einem ebenso optimalen ETL-Modul ausführen Der Ablauf ist wie folgt: Ein ETL-Architekt erstellt mithilfe des Drag & Drop Studios von PDI einen Job. Dieser Job wird in ein XML-Dokument konvertiert und an die Java-basierte Datenintegrationsbibliothek von Pentaho übergeben, die sich in Hadoop nativ ausführen lässt. Ab hier zeigt Hadoop seine volle Leistung: Es parallelisiert den Workload und weist entsprechende Rechen- und Speicherkapazitäten zu. TDWI HOT TOPIC “Es handelt sich um einen komplett in Java geschriebenen PipelineDatentransformationsserver mit Parallelverarbeitung. Zur Runtime starten wir zunächst eine Hadoop-Konversation und sagen dem MapReduce-Framework: ,Hier ist ein Job für dich. Wir geben dir ein XML-Dokument, in dem der ETL-Job beschrieben wird. Hier sind die Bibliotheksressourcen, die zum Ausführen dieses Jobs erforderlich sind und hier die notwendigen Startparameter”, erläutert er. “Nach der Ausführung teilt Hadoop der Datenintegrationsbibliothek mit: ‚Du bist eine normale Java MapReduce-Anwendung.‘ Diese übernimmt anschließend die Pentaho-ETL-Bibliotheken und stellt sie automatisch im Cluster bereit. Außerdem startet die Anwendung PDI mit den geeigneten Nodes.” Laut Henry konnte einer der aktuellen Kunden sämtliche großen PDIJobs –ungeändert – mit der Datenintegationsbibliothek von Pentaho in Hadoop ausführen, einfach durch den Austausch der Eingabe- und Ausgabeziele “Bei unserem ETL-Prozess Entwurfstool handelt es sich um einen MapReduce-Client. Wir generieren niemals Code, wir übergeben eine Spezifikation. Wir sagen: ‚Das ist die Runtime, bei der es sich bereits um eine MapReduce-Anwendung handelt. Führe sie einfach aus“, erläutert er. “Wir haben ein allgemeines ETL-Framework so geändert, dass es sich in Hadoop ausführen lässt. Hinsichtlich der Portabilität zwischen unterschiedlichen Versionen von Hadoop verwenden unterstützen wir mehr Distributionen als irgendjemand sonst: Apache Hadoop, Cloudera, MapR und Hortonworks – weitere werden folgen” Stephen Swoyer ist Redakteur bei TDWI. INFORMATIONEN ZU UNSEREM SPONSOR www.pentaho.com Pentaho ist ein Anbieter von wegweisenden Geschäftsanalyselösungen. Die Open-Source-Umgebung von Pentaho begünstigt die kontinuierliche Weiterentwicklung der modernen, integrierten, einbettbaren Plattform, die verschiedenen unterschiedlichen Anforderungen an die Verarbeitung verschiedener Datentypen und großer Datenmengen entspricht. Pentaho ist der einzige Anbieter, der eine umfangreiche Big-Data-Analyselösung bietet, die den vollständigen Big-Data-Analyseprozess (von Datenintegration über interaktive Datenvisualisierung bis hin zur untersuchenden und prognostischen Analyse) abdeckt. Pentaho unterstützt nativ Apache Hadoop, Cloudera, MongoDB und ebenso leistungsstarke analytische Datenbanken wie Greenplum und Vertica, neben weiteren herkömmlichen und Big-Data-Quellen. www.pentaho.com/getstarted À PROPOS DE TDWI TDWI, ein Geschäftsbereich von 1105 Media, Inc., setzt sich dafür ein, Bildungseinrichtungen und IT-Experten mit aktuellem Wissen zu bewährten Methoden, Strategien, Techniken und Tools zu versorgen, die für den Entwurf, das Erstellen sowie das Warten und Erweitern von Lösungen in den Bereichen Business Intelligence und Data Warehousing unverzichtbar sind. TDWI ist ein weltweites Mitgliedschaftsprogramm und bietet Folgendes: fünf wichtige Bildungskonferenzen, themenorientierte Seminare, rollenbasierte Schulungen, Vor-Ort-Kurse, Zertifikate, LösungsanbieterPartnerschaften, ein Preisprogramm für bewährte Methoden, Live-Webinars, nützliche Publikationen, ein tiefgreifendes Forschungsprogramm und eine umfangreiche internet unter tdwi.org. © 2013 by TDWI, ein Geschäftsbereich von 1105 Media, Inc. Alle Rechte vorbehalten [email protected].