F

Wie wichtig ist eine Hadoop-Infrastruktur für eine Big-Data-Umgebung?

Hadoop als Big-Data-Infrastruktur zu betreiben ist nicht ganz einfach. Außerdem hat die Software diverse Schwachstellen, die Sie kennen sollten.

Jon William Toigo

Hadoop kam zur gleichen Zeit wie Big Data in Mode. Deswegen ist aus beiden Begriffen wechselseitig eine Art Synonym...

geworden. Allerdings sind es genau genommen zwei unterschiedliche Paar Schuhe. Hadoop ist ein Modell paralleler Programme, das sich auf einigen kostengünstigen und geclusterten Prozessoren einsetzen lässt. Der Hintergrund der Software ist, Daten-intensive und verteilte Applikationen zu unterstützen. Hadoop ist nicht mehr und nicht weniger. Die Software hat schon vor der Faszination mit Big Data, wie wir es heute kennen, existiert. Weil Hadoop allerdings schon verfügbar war, hat man es als eine Art Architektur für das Erschaffen von Big-Data-Infrastrukturen benutzt. Es basiert auf den MapReduce-Algorithmen von Google. Damit lassen sich Applikationen über verschiedene Cluster verteilen. Googles Dateisystem, Betriebssystem, MapReduce-Applikationen und Hadoop Distributed File Systems (HDFS) sind fast ausschließlich mit Java realisiert. Das bringt natürlich seine ganz eigenen Probleme mit sich. Hadoop beansprucht weiterhin für sich, internodalen Ausfällen trotzen zu können. Wie bei den meisten Clustern springt ein Knoten ein, falls ein anderer ausfällt.

Es gibt Single Point of Failures in der Hadoop-Infrastruktur

Ich bin mir noch nicht ganz sicher, ob mir der von Hadoop eingeschlagene Weg liegt. Die Fachwelt ist sich weitgehend einig, dass man an einigen Aspekten einer Hadoop-Infrastruktur noch feilen muss. Andernfalls ist die Enterprise-fähigkeit der Software fraglich. Da ist zum Beispiel die Sache mit den so genannten NameNodes, die den Kern von Hadoop bilden. Diese speichern Metadaten über den Hadoop-Cluster. Dazu gehören die einzelnen Geräte und deren Aufgaben, was sie für Möglichkeiten haben, was sie tun und mit welcher Workload man sie belasten kann. Diese Informationen sind allerdings nirgends repliziert und sie existieren nur an einer Stelle. Das ist ein so genannter Single Point of Failure (SPoF) in der Hadoop-Infrastruktur. Diese Problemzone muss man adressieren, möchte man ernsthafte Rechenarbeiten auf einem Hadoop-Cluster ausführen. Dann gibt es da noch den JobTracker. Diese Komponente verwaltet MapReduce-Aufgaben und verteilt Workloads auf verschiedene Server. Vorzugsweise handelt es sich um jene, die den zu analysierenden Daten am nächsten sind. Auch bei JobTracker handelt es sich wieder um einen Single Point of Failure. Die Komponente existiert nur auf einem Server im gesamten Cluster. Bei diesen beiden Fällen handelt es sich aber nur um die offensichtlichen Problemzonen, die heutzutage in der Hadoop-Infrastruktur vorkommen.

Die komplexe Technologie erfordert Spezialisten

Die hinter Hadoop stehende Technologie ist dabei keinesfalls trivial. Wenn Sie die Software aufsetzen möchten, brauchen Sie mehr als einen kompetenten Programmierer. Diese müssen dabei noch eineArsenal an Wissen mitbringen, das man von einem einzelnen nicht unbedingt erwarten kann. Sie müssen sich mit Pig auskennen. Das ist die Kurzform von Pig Latin und steht im Zusammenhang mit der Laufzeitumgebung von Hadoop. Weiterhin sollten Sie sich mit Hive auskennen. Das ist eine spezielle Schnittstelle für SQL-Datenbank-Server, mit der man SQL-Daten in die Hadoop-Infrastruktur implementieren kann. Natürlich sollten Sie auch Java-Kenntnisse haben. Die Query-Sprache Jaql für JavaScripts Object Notation (JSON) ist im Speziellen wichtig. Heutzutage ist es schwer genug, kompetente PHP-Programmierer zu finden. In unserem Fall suchen Sie aber nach jemanden, der eine Mischung aus ziemlich exotischen Sprachen auf dem Kasten hat.

Fassen wir kurz zusammen: Hadoop hat diverse Single Points of Failure und Sie brauchen weiterhin einen Programmierer mit extraordinären Fähigkeiten. Ob so jemand überhaupt auf dem freien Markt verfügbar ist, steht auf einem anderen Blatt. Weiterhin kommt das Problem mit der Performance hinzu. Bisher hat jede mir bekannte Firma Schwierigkeiten bezüglich der Verarbeitungs-Performance der Aufgaben im Zusammenhang mit Hadoop gehabt - der Big-Data-Analyse, die auf der Plattform läuft. Einige der Probleme lassen sich auf schlecht geschriebenen Applikations-Code zurückführen. Andere wiederum hängen direkt mit der Infrastruktur selbst zusammen. Viele Firmen geben Extra-Geld für weitere Server-Cluster, Direct-Attached Storage und zusätzliche Software-Tools aus. Der höhere Plan dahinter ist, die Geschwindigkeit der Hadoop-Infrastruktur zu verbessern.

Es gibt kein gutes Management-Modell für Hadoop

Natürlich ist auch das Management der Software eine Bürde. Mit einer Technologie namens ZooKepper versuchen einige Leute, das Management der Hadoop-Infrastruktur zu bändigen. Andere wiederum bieten selbst gestrickte und um andere Produkte gebastelte Lösungen an. Das Hauptproblem ist derzeit allerdings, dass es kein wirklich gutes Management-Modell für Hadoop gibt. Die ganze Geschichte zu verwalten und am Laufen zu halten, grenzt an Folter.

Im Forbes-Magazin ist vor einiger Zeit ein Artikel erschienen, der noch weitere Bedenken an den Tag legte. Diese möchte ich Ihnen auch nicht vorenthalten. Bei Hadoop handelt es in erster Linie um die Infrastruktur für das Durchführung eines Big-Data-Projekts. Es geht hauptsächlich darum, wie Daten verarbeitet werden. Business-Menschen verstehen aber nichts von Verarbeitung. Sie scheren sich nicht darum, auf welche Weise Sie Ihre Daten verarbeiten. Sie wollen lediglich Ergebnisse und das so schnell wie möglich. Der Autor des Forbes-Artikels hat korrekt vermerkt, dass sich Hadoop sehr gut für jene Datenverarbeitung eignet, für die die Software auch geschrieben wurde. Sie ist allerdings für die Bereiche Ad-Hoc- oder Echtzeit-Analysen ungeeignet. Für den Business-Prozess ist sie nicht zu gebrauchen. Hadoop führt bestimmte nützliche Funktionen im Hintergrund aus und ist lediglich eine Möglichkeit, alle Daten zu hosten.

Das trifft den Nagel auf den Kopf und die eigentliche Frage ist: Für welche Zwecke benutzen wir Big Data? Ich bin mir ziemlich sicher, dass noch nicht jeder eine Antwort auf diese Frage hat. Die Ausnahme sind vielleicht die Kollegen aus der Marketing-Abteilung. Sie wollen Big Data benutzen, um bestimmte Kunden spezieller mit Produkten oder Diensten ansprechen zu können.

Artikel wurde zuletzt im September 2013 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Big Data

1 Kommentar

Älteste Beiträge 

Passwort vergessen?

Kein Problem! Tragen Sie Ihre E-Mail-Adresse unten ein. Wir werden Ihnen eine E-Mail mit Ihrem Passwort schicken.

Ihr Passwort wurde an die folgende E-Mail-Adresse gesendet::

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchDataCenter.de

Close