Wann Sie Hadoop einsetzen sollten – und wann nicht
Hadoop stellt nicht immer die richtige Big-Data-Lösung dar. Unternehmen sollten ihre Anforderungen genau prüfen, bevor sie Hadoop einsetzen.
Hadoop hat sich in den vergangenen Jahren einen guten Ruf als angesagte Plattform für Big Data Analytics erarbeitet. Viele Menschen setzen Hadoop mit Big-Data-Technologie gleich. Das Open-Source-Framework für die verteilte Verarbeitung von Daten bietet aber nicht für jedes Big-Data-Problem die richtige Lösung. Unternehmen sollten ihre Situation und ihre Anforderungen genau prüfen, bevor sie sich für Hadoop entscheiden. Denn möglicherweise eignet sich eine andere Lösung besser für ihre Bedürfnisse.
Hadoop bietet zum Beispiel ausreichend Leistung für die Verarbeitung großer Mengen von unstrukturierten oder halbstrukturierten Daten. Der Grund dafür ist die verteilte Infrastruktur, die eine parallele Verarbeitung auf mehreren Knoten ermöglicht.
Das Framework hat aber bekannte Schwächen im Umgang mit kleineren Datensätzen. Die niedrige Geschwindigkeit hier war einer der Gründe für den beschränkten Einsatz bei der Metamarkets Group, einem in San Francisco ansässigen Anbieter von Services für die Echtzeitanalyse der Marketing-Aktivitäten von Online-Werbeagenturen.
Nach Aussage von Michael Driscoll, CEO von Metamarkets, nutzt sein Unternehmen Hadoop für die Verarbeitung umfangreicher, verteilter Datensätze. Diese Aufgabe sei nicht zeitkritisch. Dazu gehören Berichte am Ende des Tages, die die täglichen Transaktionen analysieren, oder das Überprüfen historische Daten der vergangenen Monate.
Hadoop ist allerdings nicht am Herzstück der Services von Metamarkets beteiligt, der Analyse von Daten in Echtzeit. Laut Driscoll liegt das daran, da Hadoop zumindest in der ersten Version für die Stapelverarbeitung (Batch) optimiert sei und somit in einer Datenbank jede Datei durchsuche. Daher kommt es zu einem Kompromiss: Um tiefe Verbindungen zwischen den einzelnen Datenpunkten zu knüpfen, opfert die Technologie die Geschwindigkeit.
„Mit Hadoop ist es wie mit einem Brieffreund“, sagt Driscoll. „Sie schreiben und verschicken einen Brief und erhalten die Antwort ein paar Tage später. Das ist aber etwas grundsätzlich anderes als Instant Messaging oder E-Mail.“
Wegen des Zeitfaktors eigne sich Hadoop nur begrenzt in Online-Umgebungen, in denen hohe Leistung von entscheidender Bedeutung ist, erläutert Kelly Stirman, Director Product Marketing bei 10gen, dem Entwickler der NoSQL-Datenbank MongoDB. Ein Beispiel: Auf Datenanalyse basierende Online-Anwendungen wie Engines zur Empfehlung von Produkten müssen kleine Informationsmengen sehr schnell verarbeiten. Hadoop kann diese Aufgabe laut Stirman aber nicht effizient lösen.
Kein Ersatz für Datenbanken
Einige Unternehmen könnten versucht sein, ihre traditionellen Data Warehouses aufzugeben und stattdessen Hadoop-Cluster einzusetzen, da die Open-Source-Technologie die Kosten erheblich senkt. Für Carl Olofson, Analyst beim Marktforschungsunternehmen IDC, stellt dies einen Vergleich von Äpfeln und Birnen dar.
Laut Olofson verarbeiten relationale Datenbanken, die die Basis der meisten Data Warehouses darstellen, überschaubare Datenmengen, die gleichmäßig über einen bestimmten Zeitraum in die Datenbank fließen, wie zum Beispiel die Transaktionsdatensätze der täglichen Geschäftsprozesse. Hadoop sei jedoch am besten für die schnelle Verarbeitung von großen Datensätzen geeignet, die auch in einem Schwung geliefert werden können.
Weil Hadoop in der Regel in umfangreichen Projekten zum Einsatz kommt, die Cluster von Servern und Mitarbeiter mit speziellen Programmier- und Daten-Management-Kenntnissen erfordern, können Implementierungen teuer werden, selbst wenn die Kosten pro Dateneinheit niedriger sein können als bei relationalen Datenbanken. „Wenn Sie alle Kosten einbeziehen, wird ist es nicht so billig, wie man erwartet“, sagt Olofson.
Spezialisierte Entwicklungsfähigkeiten sind notwendig, da Hadoop in der ursprünglichen Version für die Programmierung das Software-Framework MapReduce verwendet, das nur einer begrenzten Anzahl von Entwicklern vertraut ist. Todd Goldman, Vice President Enterprise Data Integration beim Softwarehersteller Informatica, sieht daher Schwierigkeiten beim Zugriff von SQL-Datenbanken auf in Hadoop abgelegte Daten.
Verschiedene Anbieter haben Konnektoren entwickelt, die den Transfer von Daten zwischen Hadoop-Systemen und relationalen Datenbanken unterstützen. Aber Goldman glaubt, dass der Aufwand für die Integration der Open-Source-Technologie für viele Unternehmen zu hoch sei. „Es ergibt keinen Sinn, die gesamte Datenstruktur des Unternehmens ausschließlich für Hadoop zu erneuern“, ist er überzeugt.
Sinnvoller Einsatz, kein Hype
Laut Goldman eignet sich Hadoop vor allem für das Staging und als Plattform für die Datenintegration während eines ETL-Prozesses (Extract, Transform and Load). Diese Anwendung klingt angesichts des Hypes um Hadoop nicht besonders aufregend, ist aber sehr sinnvoll für IT-Abteilungen, die große Dateien miteinander verschmelzen wollen. In diesen Fällen erweist sich die Rechenleistung von Hadoop als sehr nützlich.
Im Staging eines ETL-Prozesses müssen große Datenmengen zwischenzeitlich abgespeichert werden, um sie schnell zu verarbeiten. Gleichzeitig gelten für den Staging-Bereich andere Anforderungen als für eine operative Datenbank. In gegenwärtigen Data Warehouses kommt für das Staging oft eine klassische relationale Datenbank zum Einsatz.
Das ist teuer, und im schlimmsten Fall hemmen Mehrkosten für aufwendige Extraktionsschritte oder Engpässe in der Verarbeitungskapazität die Produktivität und Kreativität der Analysten. Durch den Einsatz von Hadoop lässt sich günstiger Speicherplatz gewinnen.
Mehr zum Thema Hadoop:
Essential Guide zu Big Data: Anwendung, Datenschutz und Technologie.
Hadoop zur Leistungssteigerung mit anderen Big-Data-Framworks mischen.
Cloud-Storage-Optionen: Object Storage oder Hadoop?
Hadoop-Integration von SAP: Diese Möglichkeiten bietet das Softwarehaus an.
Bessere Datenqualität mit Big-Data-Analytics und Hadoop.
Hadoop eignet sich laut Driscoll gut für ETL-Prozesse, da es die Integrationsaufgaben auf zahlreiche Server in einem Cluster aufteilen kann. Seiner Meinung nach kann der Einsatz von Hadoop für die Vorbereitung, Integration und Übertragung von Daten in ein Data Warehouse oder eine andere Datenbank die Investitionen in diese Technologie rechtfertigen. Sie könnten auch als Türöffner für größere Projekte dienen, die stärker von der Skalierbarkeit von Hadoop profitieren.
Natürlich setzen führende Internet-Unternehmen wie Google, Yahoo, Facebook und Amazon seit Jahren Hadoop ein. Zudem werden neue Technologien entwickelt, die einige der Schwächen und Grenzen von Hadoop beseitigen. Zum Beispiel bieten mittlerweile einige Anbieter Tools zur Echtzeitanalyse von Hadoop-Daten an. Und unter Hadoop 2 wird MapReduce zu einem optionalen Element. Zudem unterstützen Hadoop-Systeme andere Arten von Anwendungen.
Letztlich ist es für die Entscheider in der IT-Abteilung und aus den Fachabteilungen wichtig, sich nicht vom Hype blenden zu lassen und zu verstehen, wie Hadoop in ihren operativen Betrieb passt. Denn Hadoop ist ein leistungsfähiges Werkzeug, das viele nützliche Analysefunktionen unterstützt. „Es gibt derzeit so viel Hype um Hadoop, dass viele Leute denken, es sei ein Alleskönner“, sagt Kelly Stirman, Director Product Marketing bei 10gen. „Doch in der Realität ist es ein sehr komplexes Stück Technik, das viel Pflege und Anpassung braucht, damit es einen Mehrwert erzielt.“
Folgen Sie SearchEnterpriseSoftware.de auch auf Twitter, Google+ und Facebook!