Evolution von Apache Storm zu Heron
Datenströme nach Hadoop richtig kanalisieren
Fallstricke
Neben den vielen Vorteilen von Apache Storm gibt es jedoch auch einige Nachteile, welche sich oftmals erst in der direkten Nutzung ergeben und vorher leider ohne Erfahrung nicht erkennbar sind. Während die Skalierbarkeit des Systems kein Problem darstellt, ist das Debuggen eine der mühseligsten und abenteuerlichsten Herausforderungen. Nicht nur, dass verteilte Systeme per se eine hohe Komplexität in der Suche nach Fehlern mitbringen, auch die Möglichkeiten der Fehlersuche sind sehr stark eingeschränkt. Beim Auftreten von Fehlern muss man schnell in der Lage sein, die Ursache zu identifizieren.
Hinsichtlich Apache Storm kann dies mit einer Veränderung der Menge der in das System fließenden Daten zusammenhängen oder mit fehlerhaftem Code beziehungsweise fehlerhafter Hardware. Da sich in Storm viele Komponenten einer Topologie einen Prozess teilen, ist es oftmals schwierig die Ursache zu ergründen. Weiterhin benötigt Storm dedizierte Hardware mit viel Arbeitsspeicher, welche zwangsläufig zu einer ineffizienten Nutzung des Clusters führt und auch bei der Skalierung problematisch werden kann.
Dementsprechend gestaltet sich auch die Bereitstellung und Wartung von Maschinen als eine schwierige Angelegenheit. Effizienz in der Auslastung von Ressourcen ist immer direkt mit den Kosten von Infrastruktur gekoppelt und damit ein erstrebenswertes Ziel, welches unter Storm indes schwer zu erreichen ist. All die zuvor angeführten Fallstricke machen es für Anwenderunternehmen nicht gerade einfach, im produktiven Einsatz eine Storm-Topologie zu nutzen.
Evolution von Storm
Der größte Nutzer von Storm ist Twitter. Das Unternehmen hatte im Juli 2011 Nathan Marz samt seiner Firma Backtype akquiriert. Bei Twitter leitete Marz ein Entwickler-Team, das wichtige Kern-Infrastruktur entwickelte und betreute - unter anderem Storm. Im März 2013 verließ Marz Twitter und gründete ein eigenes Unternehmen, das sich momentan allerdings noch im Stealth-Modus befindet.
Da Twitter zunehmend an Grenzen stieß und die Fehlersuche ein sehr hartes Stück Arbeit ist, wurde ein neuer Ansatz gewählt, um die Stärken von Storm weiterhin nutzen zu können und die Schwächen zu eliminieren. Das dabei entstandene Produkt trägt den Namen "Heron" und wird vermutlich dieses Jahr noch als Open-Source Projekt veröffentlicht werden. Die neue Lösung versucht, ein sauberes Mapping von logischen Einheiten auf physikalische Ressourcen oder Prozesse zu ermöglichen und eine Nutzung und Teilung von Clusterressourcen mit anderen Technologien zu gewährleisten. Einzelne logische Komponenten werden nun als einzelne Tasks ausgeführt, wodurch eine effizientere Fehleranalyse ermöglicht wird.
- Hadoop – Framework für Big Data
Haddop ist ein komplexes Framework, welches große Datenmengen auf zahlreiche Clusterknoten verteilen und berechnen kann. - Daraus besteht Hadoop
Hadoop besteht aus einem Cluster. Ein Knoten übernimmt die Steuerung (NameNode), die anderen die Berechnungen (DataNodes) im Cluster. - Lokaler Betrieb oder Cloud
Hadoop können Sie auch in der Cloud bei Microsoft Azure betreiben. - Ersetzt Hadoop Business Intelligence im Unternehmen?
Big Data-Lösungen wie Hadoop ergänzen Business Intelligence. Im Gegensatz zu BI-Lösungen, benötigen Big-Data-Lösungen keine perfekt zusammen gestellten Daten. - IBM General Parallel File System im Big Data-Einsatz
Verschiedene Clusterknoten können auf eine gemeinsame Datenbasis zugreifen, wenn GPFS im Einsatz ist. Unternehmen müssen beim Einsatz von Hadoop also nicht gezwungenermaßen auch auf HDFS setzen. - Hadoop in Amazon Web Services, Google Cloud Platform und Rackspace
Hadoop können Sie auch in Amazon Web Services betreiben. - Die wichtigsten Hadoop-Distributionen
Hortonworks Data Platform gehört zu den besonders bekannten Hadoop-Distributionen. - Hadoop erweitern – YARN und Co.
Auf dem Markt finden Sie zahlreiche Erweiterungen, mit denen sich der Funktionsumfang von Hadoop vergrößern lässt. - Sicherheit und Überwachung im Hadoop-Cluster
Apache Knox erhöht beispielsweise die Sicherheit im Hadoop-Cluster. Für die Überwachung der Hadoop-Infrastruktur eignet sich Apache Chukwa. - Oracle, IBM und Co. – Hadoop kommerziell erweitern
Oracle bietet zum mit Big Data SQL die Möglichkeit über SQL-Abfragen auf Big Data-Daten zuzugreifen. IBM InfoSphere BigInsights erweitert Hadoop um zahlreiche Möglichkeiten.
Ferner ermöglicht das neue Design eine genauere Lokalisierung der Fehlerstelle innerhalb der Topologie. Dies wird durch eine bessere Bereitstellung von Metriken aus der laufenden Topologie ermöglicht. Während in Storm nur eine sehr grobe Spezifikation der zu verwendenden Ressourcen möglich ist, bietet Heron eine sehr feingranulare Zuteilung von Ressourcen, welche es einfacher macht, eine übermäßige Ressourcenzuteilung zu verhindern. Durch die Bereitstellung von je einem Topologie-Master je ausgeführter Anwendung, ist die Gefahr, eine andere Topologie bei einem Fehlverhalten zu beeinflussen, beseitigt.
In Storm hatten Anwender nur zwei Alternativen: man konnte "die Daten fließen lassen" oder "die Daten nicht fließen lassen" - also eine binäre Möglichkeit zur Datenflusssteuerung. Innerhalb von Heron ist nun eine dynamische Anpassung der Datenrate möglich. Diese Eigenschaft hilft auch bei der Migration auf neue Maschinen oder beim Upgrade der bestehenden.