Big Data lebt von großer Datenvielfalt, enormen Datenmengen und schneller Verfügbarkeit. Gleichzeitig sind dies die größten technischen Herausforderungen. Hadoop bietet all das: Billige Speichermöglichkeit, schnellen Zugriff und eine große Vielfalt. Wie geht das?
Wie alles hat auch Big Data zwei Seiten. Doch die zwei Seiten der Big-Data-Medaille sind identisch. Die Vorteile auf der einen Seite sind zugleich die Nachteile auf der anderen Seite. Je größer die Datenmenge, umso besser lassen sich Muster erkennen und Vorhersagen treffen.
Aber: Je größer die Datenmenge, umso teurer die Speicherung und umso langsamer der Zugriff bei der Verarbeitung. Je größer die Vielfalt der Daten, desto vielfältiger die Einblicke in komplexe Zusammenhänge. Aber: Je größer die Datenvielfalt, desto schwieriger wird es, alle Daten miteinander auszuwerten, die Daten zu speichern und entsprechend teurer ist die Anwendung.
Hadoop von Apache schafft Abhilfe bei der Datenbewältigung
Die Lösung für all diese Probleme heißt Hadoop – das freie Framework von Apache mit dem kleinen Elefanten als Emblem. Sowohl der Name als auch das Firmenlogo gehen auf ein Kinderspielzeug des Sohnes von Gründer Douglass Cutting zurück. Der Guardian kürte Hadoop 2011 noch vor dem iPad und Wikileaks zur Innovation des Jahres. Hadoop machte seither Big Data zu einer alltagstauglichen Anwendung auf einem regulären Computer. Die ersten Unternehmen, die Hadoop mit Erfolg anwandten, sind neben Google und Yahoo Facebook, AOL und IBM. Diese Unternehmen waren die ersten, die vor der neuen Herausforderung standen, riesige Datenmengen schnell zu verarbeiten. Viele Anbieter integrieren inzwischen Hadoop in ihre Werkzeuge und Produkte, da heute mehr und mehr reguläre Unternehmen vor denselben Problemen stehen wie Google und Yahoo vor 15 Jahren.
Was genau ist Hadoop?
Douglass Cutting, der Erfinder von Hadoop, war lange Zeit eine zentrale Figur der Open-Source-Bewegung. Als Google Labs um das Jahr 2003 einen Teil seines Map-Reduce-Algorithmus veröffentlichte, erkannte Cutting die Bedeutung und das Potential dahinter. Er begann mit der Entwicklung des Hadoop-Systems, das Allen ermöglichen sollte, in den Genuss einer Open-Source-Suchmaschine zu kommen.
Heute verspricht Hadoop eine Lösung für die drei großen Big-Data-Probleme – auch die drei großen Vs genannt:
- Datenmenge (Volume),
- Datenvielfalt (Variety) und
- Zugriffsgeschwindigkeit (Velocity).
[selectivetweet]Die 3 großen Probleme von #BigData: Volume, Variety, Velocity. Die Lösung: #Hadoop.[/selectivetweet]
Zunächst ist Hadoop ein freies, in Java geschriebenes Open-Source-Software-Framework, also ein “Programmiergerüst”, von Apache. Das heißt, dass sich der Quellcode von Hadoop frei von der Homepage von Apache herunterladen lässt. Darüber hinaus ist keine spezielle Hardware notwendig. Denn das Grundprinzip von Hadoop ist, eine große Anzahl von Rechnern zu Clustern zusammenzuschließen. In so einem Hadoop-Cluster können riesige Datenmengen gespeichert und mit enormer Geschwindigkeit verarbeitet werden. Letzteres ist möglich, weil die Rechenleistung der einzelnen Knotenpunkte im Cluster zur Berechnung der Anfragen mit genutzt werden.
So funktioniert Hadoop
Hadoop hat derzeit vier einzelne Komponenten, aus denen es in der Basisversion besteht:
- Hadoop Common,
- Hadoop DFS/ HDFS,
- der Map-Reduce-Algorithmus und
- Hadoop YARN.
Hadoop Common liefert alle Programmdaten und Ressourcen, um eine Hadoop-Lösung aufzusetzen. Das “Hadoop Distributet File System” (HDFS) ist ein verteiltes Dateisystem. Das heißt, dass im HDFS Dateien wahlweise auf einem oder mehreren Punkten im Rechnerverbund gespeichert werden können. Es besteht sogar die Option, automatisch von allen Dateien Duplikate anzulegen, damit einzelne Daten nicht verloren gehen, wenn ein Knotenpunkt ausfällt. Das HDFS ist hochleistungsfähig und kommt laut Apache mit mehreren 100 Millionen Anwendungsdaten zurecht.
Der bereits erwähnte Map-Reduce-Algorithmus ist der Kern von Hadoop. Er zerteilt die Rechenaufgaben zuerst in viele kleine Teile (Map-Prozesse), die parallel an unterschiedlichen Stellen bearbeitet werden. Die Ergebnisse werden in einem Zwischenschritt zusammengeführt und in der Reduce-Phase abschließend ausgewertet. Dieses Verfahren wird von Hadoop YARN ergänzt. YARN steht für “Yet Another Resource Negotiator” und stellt eine weitere Cluster-Verwaltungstechnik dar. Da YARN ähnlich wie der Map-Reduce-Algorithmus die im Rechnerverbund zur Verfügung stehenden Ressourcen managt, wird er manchmal auch Map-Reduce-2 genannt.
Der kleine Elefant und die Datenrevolution
Diese vier Komponenten machen die Sprengkraft von Hadoop aus. Das Clustern und Verteilen von Datenpaketen auf einer Vielzahl von Servern eines Rechnerverbunds mit dem HDFS birgt auch Sicherheitsrisiken. Der Map-Reduce-Algorithmus und YARN, die die rasante Bearbeitung und günstige Speicherung riesiger Datenmengen ermöglichen, haben aus Hadoop in den letzten Jahren die Big-Data-Anwendung werden lassen. Durch die Kombination dieser Komponenten kann Hadoop komplexe Rechenaufgaben im Petabyte-Bereich (> 1 000 000 Gigabyte) realisieren. Hadoop machte Anwendungen in dieser Größenordnung erstmals wirtschaftlich, weswegen mit dem System der Beginn der Datenrevolution eingeläutet wurde.
[selectivetweet]#Hadoop revolutioniert #BigData. Warum es dennoch kein Allheilmittel ist.[/selectivetweet]
Lange war diese Aussage richtig. Dennoch ist Hadoop kein Allheilmittel. Müssen etwa nur kleinere Datenmengen verarbeitet werden, stellt Hadoop keine optimale Lösung dar. Eine weitere, viel entscheidendere Einschränkung besteht, wenn es um die Echtzeitverfügbarkeit von Daten geht. Das Grundprinzip von Hadoop, Daten in den Festspeichern der Knotenpunkte im Cluster zu speichern ist Vor- und Nachteil zugleich. Einerseits wird Hadoop gerade dadurch wirtschaftlich, andererseits gerade dadurch träge, wenn es um Echtzeit-Analysen geht. Dazu müssen die Daten mühsam von den Festplatten in die Arbeitsspeicher geladen werden, was ein zeitraubender Prozess ist.
Es könnte allerdings eine Frage der Zeit sein, bis die Unterscheidung zwischen Fest- und Arbeitspeicher selbst hinfällig wird. Spätestens dann kann die Datenrevolution beginnen.