Hadoop erschließt Big Data für Data Warehouses

Das Open Source Framework Hadoop ergänzt Data-Warehouse-Systeme im Hinblick auf das Speichern und verteilte Verarbeiten großer Datenmengen. Das knappe Know-how auf dem Markt bedingt umfangreiches Consulting. (Ausgabe 10/2013)

Die Datenvolumina steigen weltweit rasant. Dafür verantwortlich sind nicht nur Smartphones, Social-Media- und Kollaborationsplattformen, sondern auch RFID (Radio Frequency Identification) und Sensorik-Anwendungen. Weitere Echtzeitinformationen kommen von Produktions- und Lagerstätten über urbane Straßenbeleuchtungsnetze und Windkraftparks bis hin zu privaten Stromzählern, Automobilen und Kühlschränken. Bei der Datenmenge reden wir inzwischen von Petabyte, Exabyte und Zettabyte.
Zu den strukturierten Daten, die von jeher über ein Data Warehouse verwaltet und ausgewertet wurden, kommen zunehmend unstrukturierte Daten in Form von Textfiles, Audio- und Videostreamings, die beispielsweise das Kaufverhalten in Webshops oder das Benutzerverhalten beim Online-Gaming beschreiben. Der Umgang damit erfordert neue technologische Konzepte und Werkzeuge. Das Framework Apache Hadoop ist eine dieser Technologien. Es ermöglicht das Speichern riesiger Datenmengen und -arten sowie deren verteiltes und paralleles Verarbeiten.

Hadoop ist ein Open Source Framework auf Basis des Hadoop Distributed File System HDFS und des MapReduce-Algorithmus. Aus dem Ökosystem kommen Technologien wie Hive, HBase, PIG und Mahout dazu.

Hadoop ist ein Open Source Framework auf Basis des Hadoop Distributed File System HDFS und des MapReduce-Algorithmus. Aus dem Ökosystem kommen Technologien wie Hive, HBase, PIG und Mahout dazu. Quelle: white duck

Big Data eröffnet Unternehmen neue Geschäftsmodelle
Datenströme zu nutzen, um daraus entscheidungsrelevante Informationen zu generieren, ist von jeher das Ziel der Business-Intelligence(BI)-Anbieter. Sie waren die ersten, die sich Big Data auf die Fahne geschrieben hatten. Die neuen Technologien erweitern die Möglichkeiten, neben den quantitativen Daten auch unstrukturierte Daten in die Auswertungen mit einzubeziehen, und versprechen unter dem Banner Big-Data-Analytics neue Geschäftsmodelle.
Ein Beispiel ist die Branche der Stromversorger: Heute wird der Stromzähler zumeist einmal pro Jahr manuell von einem Mitarbeiter des Stromversorgers abgelesen und über ein Formular-basiertes ETL (Extraktion, Transformation, Laden) in ein Data Warehouse eingespielt. Daraus resultiert ein starres Preismodell für Strom. Alternativ dazu ließe sich künftig der Stromverbrauch mittels automatisierter Sensordatenabfrage nahezu in Echtzeit ablesen. Mit Hadoop steht eine Technologie zur Verfügung, welche die großen Datenmengen vorfiltern kann. Die Extrakte aus Hadoop wandern für die Weiterverarbeitung in ein Data Warehouse und stehen dann zur Auswertung mit klassischen BI-Werkzeugen bereit. So können Preismodelle entstehen, die sich an den Verbrauchsmustern orientieren.
Die Erweiterung der Produktportfolien mit Hadoop als einer Big-Data-Technologie war für viele Business-Intelligence-Anbieter eine logische Konsequenz, die gleich mehrere Vorteile mit sich bringt: Zunächst ist über Hadoop der Umgang mit NoSQL-Daten (Not only SQL) möglich, also Datenmengen, die über den bloßen relationalen Ansatz hinausgehen. Weiterhin skaliert  Hadoop horizontal und läuft auf kostengünstiger Standardhardware. Die Anwendungsgebiete dieser Technologie  reichen vom rein technischen Einsatz als Staging Area, um die relevante Daten vor der Transformierung zunächst eins-zu-eins aus den Vorsystemen zu sammeln, über ressourcenintensive Simulationen im Bereich von Sandboxing bis hin zu Clickstream-Analysen.

Von HDFS über MapReduce zu Hive und HBase
Hadoop ist ein freies, Java-basiertes Open Source Framework, das auf dem verteilten Dateisystem HDFS (Hadoop Distributed File System) und dem im Jahr 2010 von Google patentierten Algorithmus MapRe­duce basiert. Ein Framework deshalb, weil es sich um keine Lösung im engeren Sinn, sondern um ein Ökosystem handelt, das wiederum eine Vielzahl an weiteren Technologien enthält. Dazu zählen unter anderem die Data-Warehouse-Funktionalitäten von Hive, die spaltenorientierte Datenbank HBase, das Datenintegrationswerkzeug Pig oder das Maschinenlernverfahren Mahout, das Data-Mining-Anforderungen abbildet.
Hive, ursprünglich von Facebook entwickelt, basiert auf Hadoops Kern-Funktionalität, und ermöglichteine kostengünstig hochskalierbare Data-Warehouse-Infrastruktur. Eine Skalierbarkeit dieser Art ließe sich mit klassischen Technologien nicht realisieren. Bei Facebook laufen beispielsweise Reporting, Ad-hoc-Analysen und Machine-Learning-Anwendungen im enorm wachsenden Hive/Hadoop-Data-Warehouse.
Ein großer Vorteil von Hive ist die Verwendung der SQL-ähnlichen Abfragesprache
HiveQL, die den Einstieg für Anwender mit SQL-Know-how erleichtert. HiveQL wird intern in MapReduce-Jobs übersetzt. Der Endanwender muss sich nicht damit beschäftigen. Hive ist eine offene Technologie: Etliche analytische Datenbanken wie Microsoft SQL Server Analysis Services ermöglichen einen Abzug von Hive-Daten.
HBase als eine NoSQL-Datenbank eignet sich besonders für echtzeitnahe lesende und schreibende Zugriffe auf Big Data sowie für spezielle Anforderungen an Datenmodellierung und Verteilung, wie zum Beispiel für unstrukturierte Daten bei Web-2.0-Seiten. Aus diesem Grund ist HBase eher für Anwendungsentwickler als für BI-Fachanwender interessant. So ist HBase zum Beispiel die Basis für das Nachrichtensystem von Face­book.
Facebook, AOL und Yahoo setzen Hadoop für ihre eigenen Big-Data-Analysen ein und entwickeln das Framework auch weiter. Angesichts solch prominenter Anwender ist es absehbar, dass Hadoop nach und nach zu einer Basistechnologie wird. Rund um Hadoop hat sich ein vielfältiges Ökosystem entwickelt. Distributoren wie Hortonworks, das die einzige Windows basierte Hadoop-Distribution anbietet, und Cloudera haben sich aufgemacht, die Vielzahl der unterschiedlichen Hadoop-Komponenten mit eigenen Enterprise-fähigen Tools zu verschalen und zu vermarkten.
Die großen BI-Hersteller verfügen meist über keine eigenen ­Hadoop-Distributionen. Sie integrieren vielmehr bestehende Angebote in ihre Datenplattformen und bündeln daraus Big-Data-Lösungen. In diesem Kontext wären beispielsweise Microsoft HDInsight (basierend auf Hortonworks) in der Cloud auf Windows Azure und on-premise für Windows Server zu nennen sowie die Oracle Big Data Appliance (basierend auf Cloudera) oder auch die Teradata Appliance for Hadoop (basierend auf Hortonworks).

Die fachlichen Ressourcen für Hadoop-Projekte sind knapp
Consulter bringen Wartungs- und Service-Kapazitäten ein. Beides macht die Kerntechnologie im professionellen Unternehmensumfeld erst nutzbar. Allerdings erfordert der Aufbau von Big Data-Analytics mit Hilfe des sehr techniklastigen Hadoop-Angebots fachliche Komponenten und personelle Ressourcen, die derzeit eher begrenzt vorhanden sind. Das führt unter dem Strich zu vergleichsweise hohen Kosten. Der aktuelle Stand der Entwicklungs- und Administrations-Tools befinden sich noch in einem relativ frühen fachlichen Stadium, was die Automatisierung von Standardprozessen komplex macht.
Obwohl Hadoop – bedingt durch seine Architektur – im Vergleich zu herkömmlichen relationalen Datenbanken eine enorm hohe Skalierbarkeit mit sich bringt, benötigt es flexibel einsetzbare Speicher- und Rechenkapazität, welche trotz niedriger Hardwarekosten im klassischen On-Premise-Einsatz sehr schnell hohe Aufwände nach sich ziehen kann. Der Betrieb innerhalb einer Cloud-Infrastruktur schafft durch seine ressourcenbezogenen Abrechnungsmodelle und durch seine Scale-Out-Möglichkeiten eine kostengünstige Alternative und ist für das Betreiben eines Hadoop-Clusters generell zu empfehlen.

Hadoop und Data Warehouse ergänzen sich gegenseitig
Hadoop und NoSQL sind zwar grundlegend verschiedene Dinge, über die Unterschiede herrscht jedoch eine gewisse Verunsicherung vor. NoSQL stellt eine Alternative zur konventionellen Datenbank dar: Es handelt sich um nicht-relationale Datenbanken, die keine festgelegten Tabellenschemata besitzen (man spricht daher auch von der Schemeless Database Technology) und sich horizontal skalieren lassen, indem man zusätzliche Systeme hinzufügt. Es gibt mehr als 100 NoSQL-Datenbanken (ein detaillierter Marktüberblick befindet sich unter nosql-database.org), darunter beispielsweise Google BigTable, ­Amazon Dynamo, MongoDB oder CouchDB. Die meisten davon sind Open-Source-Produkte. Sie können, müssen aber nicht unbedingt auf Hadoop-Technologien basieren. Bei Hadoop handelt es sich um ein Ökosystem, zu dem unter anderem Anwendungen wie die spaltenorientierte Datenbank HBase und die Data-Warehouse-Software Hive gehören. Diese wiederum bilden in BI-Szenarien als vergleichsweise wenig technische und mehr fachlich orientierte Lösungen eine gangbare Brücke zwischen Hadoop auf der einen und dem traditionellen Data Warehouse auf der anderen Seite.
Hive unterstützt in Hadoop klassische Data-Warehouse-Operationen wie Datenaggregation. Hive verwendet HiveQL, eine SQL-ähnliche Sprache, die einen Einstieg für Anwender mit SQL-Know-how erleichtert.
HBase eignet sich dagegen als NoSQL-Datenbank für Anwendungen mit speziellen Skalierungsanforderungen in Bezug auf die Datenmodellierung, Verteilung und Skalierbarkeit.
Moderne Datenhaltungsplattformen müssen sowohl inhouse als auch in der Cloud oder in einer Kombination beider Varianten lauffähig sein. Das fordern Unternehmen, die ihre Daten im eigenen Rechenzentrum halten wollen oder müssen. Hinzu kommt die notwendige Fähigkeit, mit strukturierten und unstrukturierten Daten jeder Größenordnung umzugehen – und diese auch über die gängigen BI-Tools auszuwerten. Wichtig ist weiterhin, dass sich die Hadoop-Lösungen mit den klassischen Data-Warehouse-Lösungen kombinieren lassen. Es geht nämlich nicht etwa um das Ersetzen einer Lösung, sondern vielmehr um das komplementäre Nutzen beider Datenhaltungsstrategien. Das Ziel dabei sind effizienz- und leistungsoptimierte Szenarien. Wenn beispielsweise der Microsoft SQL Server für die relationale Datenhaltung strukturierter Daten im klassischen Data Warehouse zum Einsatz kommt, können konnektierte Hadoop-Komponenten die nicht-strukturierte Seite ergänzen.

Die Technologie befindet sich noch in einer sehr frühen Phase
Auch wenn die Schlüsseltechnologien bereits vorhanden sind, befinden wir uns im Entwicklungszyklus derzeit noch immer auf der technologischen Seite der Welle. Die entsprechenden Applikationen sind am Markt noch nicht verfügbar, obwohl es die Marketingaussagen so mancher Anbieter suggerieren. Im nächsten Schritt müssen daher sukzessive die neuen Ansätze der NoSQL-Datenhaltung und -Auswertungsmöglichkeiten für enorm große Datenmengen in konkrete Lösungen überführt werden.
Auch technische Beschränkungen behindern bislang die Akzeptanz: So ist Hadoop noch keine Real-Time-Plattform. HDFS arbeitet nämlich, wie die meisten Hadoop-Komponenten, Batch-orientiert. Das beschränkt die Geschwindigkeit und Frequenz des Datenladens oder Datenabzugs. Real Time BI-Anforderungen lassen sich daher nicht direkt in Hadoop implementieren. Neue Projekte wie Cloudera Impala, die ein SQL Interface zu HDFS und HBase-Daten anbieten, dürften solche Anforderungen erleichtern.
Alternativen zu Hadoop als verteiltes Berechnungsframework sind die quelloffene Plattform HPCC (High-Performance Computing Cluster) oder Twitter Storm. Auch NoSQL-Datenbanken können viele Big-Data Anforderungen erfüllen. NoSQL-Datenbanken gibt es allerdings auch in Hadoop (beispielsweise HBase). Trotzdem entwickelt sich Hadoop im BI-Kontext als Standard, weil die großen BI-Anbieter darauf setzen. Die Entscheidung von Microsoft, alle bisherigen eigenen Ansätze über Bord zu werfen und ebenfalls auf den Zug aufzuspringen, bestätigt das.

Großer Nutzen ist gegen hohes Risiko abzuwägen
Wer über große und unstrukturierte Datenmengen verfügt und auf dieser Basis neue Geschäftsmodelle aufsetzen möchte, kann das heute schon tun. Hadoop bietet hierfür interessante Entwicklungspfade. Allerdings sind die Anwender bislang darauf angewiesen, sich sozusagen zu Fuß auf den mithin steinigen Umsetzungsweg zu begeben. Den Aufwand und die Risiken gegenüber den Nutzenaspekten abzuwägen und sich als Early Bird eventuell lukrative Marktanteile zu sichern, bleibt jedem Unternehmen selbst überlassen.
Bis einmal die ersten Hadoop-basierten BI-Fachapplikationen in der Breite in die Unternehmen Einzug finden, dürften noch drei bis vier Jahre ins Land gehen. Deswegen ist es im BI-Kontext wichtig, sich die passenden Komponenten aus dem Hadoop-Ökosystem auszusuchen, sich für eine Open-Source- oder Enterprise-Distribution zu entscheiden und die gesamte Architektur – also Hadoop und Data Warehouse – gut abzuwägen. Um den Nutzen abschätzen zu können, sollte in jedem Fall ein Business-Case aufgesetzt und das Hadoop-Projekt mit einem Proof of Concept eingeleitet werden.
Die gute Nachricht zuletzt: Auch weit vor Verfügbarkeit der Standardprodukte von der Stange sind bereits heute sowohl die Technologien als auch die Spezialisten vorhanden, um Big Data Analytics auf Hadoop-Basis anzugehen. jf

Die Experten

Ilias Michalarias ist Business Analyst bei white duck.

Ilias Michalarias ist Business Analyst bei white duck.

Markus Sümmchen ist Geschäftsführer und Gesellschafter bei white duck, einem Consultinghaus für Cloud-basierte Software-Entwicklung

Markus Sümmchen ist Geschäftsführer und Gesellschafter bei white duck, einem Consultinghaus für Cloud-basierte Software-Entwicklung

Kommentare sind deaktiviert