Große, unstrukturierte Datenmengen verarbeiten mit günstiger Standard-Hardware, paralleler Verarbeitung und nicht-relationalen Formaten? Hadoop ist dafür ein gutes Beispiel. [...]
Es gibt eine Reihe von Technologien, um unstrukturierte, große Datenmengen zu verarbeiten und zu analysieren. Einige Eigenschaften sind allen diesen Big-Data-Verfahren gemeinsam: Sie nutzen kostengünstige Standard-Hardware, parallele Verarbeitung und speichern die Daten in einem nicht-relationalen Format. Hadoop ist dafür ein gutes Beispiel.
Hadoop ist ein Open-Source-Framework vor allem für die Speicherung, Aufbereitung und Analyse von polystrukturierten großen Datenmengen; zentrales Kennzeichen ist eine parallele Architektur. Die wichtigsten Bestandteile von Hadoop sind das Hadoop Distributed File System (HDFS) und der MapReduce-Algorithmus, der für eine parallele Verarbeitung sorgt. HDFS untergliedert die Files in Datenblöcke einer festen Größe und speichert sie redundant auf die in einem Cluster organisierten Server-Knoten. MapReduce teilt die gesamte, zu untersuchende Datenmenge in kleine Einheiten auf und diese werden dann in einer ersten Phase parallel und unabhängig voneinander bearbeitet, untersucht und als Zwischenergebnisse gespeichert. In den nächsten Schritten folgen dann, ebenfalls parallel, weitere Auswertungen und schließlich die Präsentation der Ergebnisse.
Wo einzelne Ressorts in den Unternehmen Hadoop bereits einsetzen, geht es beispielsweise um eine 360-Grad-Sicht auf Kunden, die Auswertung von Weblogs, von Maschinendaten aus der Fertigung oder von Sensordaten. Mit Hilfe von Hadoop können die Fachbereiche selbst – ohne dazu auf die IT-Abteilung angewiesen zu sein – diese nur wenig strukturierten Daten verarbeiten und analysieren.
JAVA ODER PIG LATIN
Eine der zentralen Fragen für die Verantwortlichen in den Fachbereichen ist, welche Aufgaben durch den Einsatz von Hadoop-Clustern gelöst werden können. Die generelle Antwort lautet: Im Prinzip lassen sich alle „berechenbaren“ Aufgaben mit Hadoop meistern. Eine der Möglichkeiten dabei ist, den dazu geeigneten Java-Programmcode zu erstellen. Manchmal ist das entsprechende Know-how in den Fachbereichen vorhanden. Ansonsten bieten IT-Dienstleister, wie beispielsweise CGI, die notwenige Unterstützung.
Be the first to comment