Hadoop und die Zukunft des Data Warehouse

Welchen Stellenwert hat Hadoop im Data Warehouse der neuesten Generation?

Größer, schneller, billiger: Das ist das Versprechen verteilter Datenverarbeitungs-Infrastrukturen wie Hadoop oder MongoDB. Als typische Use Cases werden häufig Anwendungen genannt wie

  • Sentiment Analyse,
  • Recommendation Engines oder
  • Realtime-Personalisierung im E-Commerce.

Wie kann allerdings Hadoop im Umfeld der traditionellen Business Intelligence (BI) und des Data Warehouse (DWH) Kosten sparen und Wert schaffen?

Mythen über Hadoop
Zunächst ist es wichtig zu wissen, was Hadoop wirklich ist und was nicht. Wenn man von Hadoop spricht, meint man im Grunde ein ganzes Portfolio an Lösungen. Der Kern besteht hierbei aus dem verteilten Dateisystem HDFS und dem Verarbeitungsframework YARN (ehemals MapReduce). Darauf aufgebaut gibt es eine verwirrende Vielzahl von Tools wie zum Beispiel

  • Hive: ein Modul für einen SQL-artigen Zugriff auf strukturierte Daten
  • Pig: eine High-Level-Sprache zur Erstellung verteilter Datenverarbeitungs-Jobs
  • HBase: einen Column-Store im Stile von Google BigTable
  • Mahout: ein Toolkit für Data-Mining

Und noch viele mehr. Technologieberater können Ihnen dabei helfen, Licht in diesen Dschungel zu bringen und die passenden Module für Sie zu finden.

Hadoop ist sozusagen das Linux der Datenverarbeitung. Es ist kein Tool, sondern stellt eine ganze Plattform bereit, um die sich ein Ökosystem von Tools entwickelt hat. Distributoren wie Hortonworks, Cloudera oder MapR erschließen diese Plattform für die Nutzung im Unternehmen.

Der Clou an Hadoop
Was ist der Schlüssel für den Erfolg von Hadoop? Die Antwort ist einfach: Datenhaltung in einem Cluster aus Commodity Hardware skaliert mit ihrem Anwendungszweck. Sobald also

  • besonders große Datenmengen oder
  • unstrukturierte Daten

zu verarbeiten sind, spielt die Lösung ihre Vorteile aus. Das gilt vor allem, wenn für das Geschäftsmodell ein späterer Zuwachs der Datenmenge oder -komplexität unabdingbar ist.

Fall 1: Hadoop als Staging-Area im ETL-Prozess
Im Staging eines ETL-Prozesses müssen große Datenmengen zwischenzeitlich abgespeichert werden und schnell verarbeitbar sein. Gleichzeitig werden an den Staging-Bereich andere Anforderungen gestellt als an eine operative Datenbank. In gegenwärtigen Data Warehouses kommt für das Staging oft eine klassische relationale Datenbank zum Einsatz. Das ist teuer, und im schlimmsten Fall hemmen Mehrkosten für aufwendige Extraktionsschritte oder Engpässe in der Verarbeitungskapazität die Produktivität und Kreativität der Analysten. Durch den Einsatz von Hadoop lässt sich günstiger Speicherplatz gewinnen. Große Datenmengen werden verarbeitbar, komplizierte Fragestellungen zugänglich.

Insbesondere lässt sich dadurch eine Anreicherung der eigenen Daten durch externe Einflussfaktoren wie zum Beispiel Presse, Wetter oder Trends bewerkstelligen.

Fall 2: Hadoop als ELT-Worker
Der Anwendungsfall von Hadoop als ELT-Worker ähnelt dem Einsatz als kostengünstige Staging-Area. Dazu wird aber zusätzlich der Hebel durch die verbesserte Verarbeitungskapazität ausgenutzt. Das heißt, die Berechnungen werden als ELT-Prozess, quasi in-Database, auf dem Hadoop-Knoten ausgeführt statt im ETL-Prozess. Damit können rechenintensive Analysen durchgeführt werden, die bisher nicht handhabbar waren, zum Beispiel die Frage nach komplizierten Korrelationen und Verknüpfungen in den Daten.

Fall 3: Hadoop in der Vorverarbeitung unstrukturierter Daten
Hadoop spielt seine Stärke optimal aus, wenn es um die Analyse unstrukturierter Daten geht. Der Grund dafür ist die verteilte Infrastruktur. Dadurch wird die parallele Verarbeitung auf mehreren Knoten ermöglicht. Komplexität lässt sich dabei durch einen kostengünstigen Hardware-Scaleout, das heißt mehr Server, statt einem teuren Hardware-Scaleup, größere Server, bewältigen. Der Software-Scaleup, zum Beispiel höhere Lizenzkosten bei Volumen-Lizenzen, entfällt dabei ebenfalls.

Besonders wenn es um die Anreicherung von Geschäftsdaten geht, ist zumeist eine Analyse unstrukturierter Daten nötig. Das kann beispielsweise die Aufbereitung von unternehmenseigenem Content wie Dokumentation oder E-Mail-Kommunikation sein. Weitere Beispiele wären Portal-Logs, Presse-Feeds oder Maschinendaten. Der Hadoop-Cluster ermöglicht es, diese Daten vorzuverarbeiten und für den Einsatz im Data Warehouse zu erschließen.

Fall 4: Hadoop als Datenbank für feingranulare Daten
Anwendungsfälle mit einem besonders hohen Datenaufkommen sind mit klassischer Datenbanktechnologie bisher oft versperrt, weil die Datenraten schlicht nicht schnell genug wegzuspeichern sind, geschweige denn zu analysieren. Solche Fälle sind beispielsweise das durchsuchbare Speichern vieler Dokumente und das Ablegen von Server- oder Maschinen-Logs.

In diesen Fällen glänzt Apache HBase. Es handelt sich dabei um einen schema-freien Key-Value- bzw. Wide-Column-Store aus dem Hadoop-Umfeld, der dem Google BigTable Paradigma folgt. Der große Vorteil dieser Lösung ist, dass auf effiziente Weise enorme Datenmengen in kurzer Zeit redundant und ausfallsicher gespeichert werden können. Die Art der Speicherung ermöglicht gleichzeitig die performante Analyse der Daten im Nachhinein. Sind Echtzeit-Analysen gewünscht, lassen sich die Daten gleichzeitig durch einen Stream-Prozessor wie Apache Storm oder S4 live aufarbeiten.

Fall 5: Hadoop als langfristig verfügbares aktives Archiv für Rohdaten
Klassische Datenbanklösungen haben ein Problem: Sie sind teuer, wenn es um große Datenmengen geht. Viele Unternehmen archivieren ihre Altdaten daher offline entweder auf Tape oder auf Platte. Im schlimmsten Fall werden die Daten sogar gelöscht.

Wer so handelt, verschenkt großes Potential. Ein Weg, dieses Potential zu realisieren, ist der Einsatz von Hadoop als aktives Archiv. Durch den Einsatz von Commodity Hardware bleiben die Kosten überschaubar, und auf die Daten kann jederzeit zugegriffen werden. Die Anwendungszwecke haben dabei enormen Geschäftswert:

  • Batch-Run-Analysen auf dem gesamten Datenbestand seit Anbeginn der Datenaufzeichnung
  • ETL-Aufbereitung von Teilmengen der Daten in Data-Marts
  • Interaktive Exploration der Rohdaten

Die explorative Analyse von Rohdaten ist nach wie vor eine Nischen-Anwendung, die tiefergehendes technisches Know-how erfordert. Alle anderen Analysen verlangen vom Fachanwender keine Zusatzqualifikation. Die Daten stehen anschließend in der gewohnten Form zur Verfügung, nur viel feiner und mit langfristigem Vergangenheitsbezug. In der finalen Ausbaustufe eines solchen Daten-Stores steht die Vision eines Universal Enterprise Data Hub, einer Art Bus, an dem alle Informationen des Unternehmens zusammenlaufen, automatisch verarbeitet und für die Zukunft gespeichert werden. All das ist mit heutiger Technik bereits möglich.

Fazit
Hadoop macht weder Data Warehouses noch relationale Datenbanken überflüssig. Seine Rolle liegt aktuell eher in der technischen und fachlichen Aufbereitung der Daten, damit sie anschließend im Data Warehouse zur Verfügung stehen. Es ergänzt also das DWH und wertet es für den Fachanwender auf.

Kontakt: Dipl.-Phys. Johannes Knauf, Consultant BI, Ancud IT-Beratung GmbH, business-intelligence@ancud.de

www.ancud.de/de/Leistungen/BusinessIntelligence.html

www.ancud.de