X

Neuste Trends, Tipps, Strategien &
Events rund um das Thema Cloud

Hadoop heißt, Big Data endlich in den Griff zu kriegen

Warum bloß kommt das immer wie das Amen im Gebetbuch? Wenn IT-Verantwortliche über Business Intelligence (BI), Data Science und besonders über Big Data reden, landen sie irgendwann unweigerlich beim Thema Hadoop. Das Hadoop-Ökosystem scheint allgegenwärtig zu sein und jeden in der IT umzutreiben. Hier erfahren Sie, was es damit auf sich hat.

Was ist Hadoop?

 

Hadoop kommt von der Apache Foundation und ist eine Open-Source-Lösung, mit der Sie auch wahnwitzig große Datenmengen auf einer komplexen verteilten Rechner-Infrastruktur verarbeiten können. Die Software baut dazu auf einem speziellen Dateisystem, dem Hadoop Distributed File System (HDFS) auf. Das Gesamtsystem ist in Java entwickelt, das verteilte Dateisystem wiederum enthält den MapReduce-Algorithmus, den Google in seinen Grundzügen entwickelt hat. MapReduce ist für die Verarbeitung großer Datenmengen optimiert, also ein Tool speziell für Big Data. 

 

Das Besondere an der Hadoop Architektur: Sie braucht keine eigene Hardware. Hadoop-Datenbanken laufen auf gängigen Standard-Computern, Sie brauchen also nicht auf teure SAN-Lösungen zurückzugreifen.
 
Und warum heißt Hadoop nun Hadoop? HardwareDoomsdayProduct? – Nein, es ist der Name eines kleinen gelben Elefanten (daher auch das Logo), der das Lieblings-Stofftier des Kindes einer der Entwickler war.
 

Wie funktioniert Hadoop?

Wenn Sie eine spezifische Aufgabe im Big-Data-Umfeld (Datenverarbeitung und/oder Datenanalyse) betrachten, dann kann Hadoop diese Aufgabe auf verschiedene Rechner in einem Cluster verteilen. Der verantwortliche Administrator braucht sich dabei nicht mehr darum zu kümmern, wie er die Daten verteilt. Ein großer Vorteil ist auch die stufenlose Skalierbarkeit: Cluster lassen sich innerhalb kürzester Zeit erweitern, vor allem in Cloud-Umgebungen wie AWS (Amazon), Azure (Microsoft) oder in Oracle-Cloudsystemen. Durch ein verteiltes Hadoop-System bekommen Sie somit praktisch grenzenlose Ressourcen zur Datenanalyse in die Hand.

Vereinfacht erklärt, geht das so: MapReduce teilt die gesamte Datenverarbeitung in einzelne Teilaufgaben auf, die sich im Rechnerverbund parallel ausführen lassen. Die einzelnen Resultate werden dann wiederum zu einem Gesamtergebnis zusammengefügt. Ein Rechner des Clusters übernimmt die Aufgabe des Masters, alle anderen Computer fungieren als Slave. Oder etwas fachlicher: Das MapReduce-Framework übernimmt die Datenverarbeitung. Der Mapper erfasst die Daten, bereitet sie auf und leitet sie anschließend an den Reducer weiter, unterstützt von dem sogenannten Pipelining-Verfahren. Der Reducer wiederum bildet aus der Ausgangs-Datenmenge die erwünschte Schnittmenge, und aus diesem Datenmaterial lassen sich dann z. B. Analysegrafiken, Diagramme oder Statistiken gewinnen.

Aufgabe des Dateisystems HDFS ist es, die Datenmengen auf die einzelnen Teilsysteme im Cluster zu verteilen.

 

Die Hadoop Tools

 

Was ist Hadoop?

 

Die Hadoop-Architektur besteht aus einzelnen Komponenten und Tools. Die vier Hauptelemente des Frameworks sind

•     Hadoop Common

•     HDFS

•     MapReduce

•     YARN (Yet Another Resource Negotiator)

Common bildet den Kern mit den Grundfunktionen und Tools für alle weiteren Elemente der Software. Hierin sind u. a. die Java-Files und -Scripts enthalten, die für den Software-Start zuständig sind. Die Interaktion zwischen dem Hadoop-Common und allen weiteren Komponenten wird über Schnittstellen abgewickelt.

HDFS, das Hadoop Distributed File System, kann mehrere 100 Millionen Daten eines verteilten Dateisystems in einem Rechnerverbund verwalten. Das Dateisystem enthält Dupliziermechanismen für redundante Datenhaltung. Das beugt Datenverlusten bei einem Ausfall einzelner Rechnern vor.

Der MapReduce-Algorithmuist das Herzstück und die zentrale Engine des Hadoop-Frameworks. Mit den Funktionen dieses Algorithmus' lassen sich rechenintensive Aufgaben auf die Ressourcen eines Rechner-Clusters verteilen. Durch die synchrone Datenverarbeitung entsteht eine sehr hohe Performance des Gesamtsystems. Wenn die zu berechnenden Datenmengen in den TeraByte-Bereich anwachsen, benötigt der MapReduce-Prozess allerdings u. U. viel Rechenzeit. Hier spielt des Hadoop-System seinen großen Vorteil aus: Durch verteiltes Rechnen wertet jeder einzelne Computer nur eine kleine Teilmenge aller Daten aus. Die Teilergebnisse kommen erst kurz vor der Übergabe an den Reducer-Prozess wieder zusammen. Die Hadoop-Dienste TaskTracker und JobTracker ergänzen den MapReduce-Algorithmus. Durch die Aufteilung von Datenspeicher und Rechenleistung ist das Framework somit die optimale Lösung für nahezu alle Big-Data-Aufgaben.

YARN ergänzt schließlich den MapReduce-Algorithmus, und zwar als Management-Tool, das die Ressourcen eines Rechnerverbundes verwalten und verschiedene Aufgaben dynamisch zuordnen kann. YARN legt über Queues die Kapazitäten der Systeme für die einzelnen Jobs fest.

 

Weitere Tools im Hadoop-Umfeld

Eine Reihe weiterer Tools der Hadoop-Architektur bauen als Prozessanwendungen auf MapReduce auf. Hier die wichtigsten Tools und ihre Einsatzgebiete:

Hive erweitert MapReduce um SQL-Funktionalitäten – die SQL-Statements sind identisch. Hierdurch ermöglicht Hive den Aufbau eines dezentralen Data Warehouse Systems, mit dem extrem große Datenmengen verarbeitet werden können.

Pig ist eine Skriptsprache, mit der sich komplexe MapReduce-Transformationen verarbeiten lassen. Die einzelnen Sprachelemente basieren auf PigLatin und werden als MapReduce-Jobs ausgeführt. Pig kommt meistens bei ETL-Transformationen in HDFS zur Anwendung.

Mahout wird für Predicitions und Clusteranalysen eingesetzt. Es handelt sich um eine Machine-Learning-Bibliothek für das Business-Intelligence-Umfeld.

Spark ist eine Erweiterung des Hadoop-Ökosystems und ermöglicht dem Gesamtsystem eine Real-Time-Datenverarbeitung sowie Datastreaming-Funktionen.

Flink ist, ähnlich wie Spark, eine speicherresidente Batch Processing Engine und umfasst auch ähnliche Funktionen wie Spark. Der Fokus liegt hier jedoch auf Complex Event Processing sowie auf Machine Learning. Flink beruht auf dem Forschungsprojekt Stratosphere. Das Tool wurde zwar erst nach Spark veröffentlicht, enthielt aber viel früher effektive Speicherverwaltungsmechanismen, die nicht auf den eher trägen Serialisierungsverfahren von Java basierten.

 

Was ist Hadoop und wie funktioniert Hadoop?

Hadoop und Big Data - Zwei die sich vestehen

Das typische Einsatzgebiet des Hadoop-Ökosystems haben Sie, wenn ein "einfacher" Computer beim Erreichen eines bestimmten Umfangs der Datenanalyse seine Aufgaben nicht mehr in einer halbwegs erträglichen Zeit abarbeiten kann. Wann dieser Punkt erreicht ist, hängt mal von der Datenmenge, mal von der Komplexität der Jobs (oder beidem zusammen) ab – aber irgendwann wird es einfach unabdingbar, auf eine Clustercomputing-Lösung umzusteigen.

Der Einsatz im Bereich Business Intelligence ist die Domäne des Hadoop-Systems. Hier kann das Framework seine Stärke ausspielen, umfangreiche und auch inhomogene Datenbestände in hohem Tempo zu verarbeiten. Hinzu kommt: Daten für BI-Reports und Analysen stammen häufig aus unterschiedlichen Datenquellen und sind meist sehr unterschiedlich strukturiert. Ein Hadoop-Cluster bewältigt schnell und ökonomisch riesige Datenmengen, selbst im PetaByte-Bereich. Die Ergebnisse der Datenverarbeitung mit dem Hadoop-System liefern Erkenntnisse, die bei der strategischen Ausrichtung eines Unternehmens wichtig sind und bei Entscheidungsfindungen außerordentlich hilfreich sein können. Nicht zuletzt wird mit der Big-Data-Verarbeitung das Berichtswesen durch Effizienzsteigerung wesentlich einfacher.

Fazit

Das Hadoop-Framework setzt Ansätze, die im Prinzip seit Jahrzehnten bekannt sind, in Aufsehen erregender Weise neu um. Zu diesen Ansätzen gehören sowohl das verteilte Rechnen als auch die Übergabe von Daten an weitere Programme. Ein wesentlicher Vorteil liegt zudem im kostengünstigen Einsatz: Da das Hadoop-System auf Java basiert, kann es auf nahezu jeder Hardware-Plattform eingesetzt werden. Dadurch wird es möglich, dass wirklich jedes Unternehmen mit Big Data arbeiten kann.

 

Kontakt:

Wenn Sie noch mehr darüber wissen möchten, dann sind wir gerne für Sie da, per LinkedIn, Facebook oder Twitter.

Kommentieren

Kommentare ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.