Ergänzung oder Konkurrenz

Apache Spark versus Hadoop

Die an der Berkeley University entwickelte Datenanalyseplattform Spark wird immer populärer. Viele meinen, dass damit ein baldiges Ende von Hadoop zu erwarten ist, doch eine dauerhafte gegenseitige Ergänzung ist ebenfalls im Bereich des Möglichen.
Ist Spark der Hadoop-Killer oder nur eine weitere Ergänzung?
Ist Spark der Hadoop-Killer oder nur eine weitere Ergänzung?
Foto: The Apache Software Foundation

Apaches Spark ist die neue Trendtechnologie auf den Gebieten Big Data, Analytics und Data Science. Viele Spark-Protagonisten meinen sogar bereits, dass diese neue Plattform alles andere derart in den Schatten stellt, dass es schon bald das dominierende Werkzeug für alle Datenwissenschaftler sein wird. Das erscheint nicht unbegründet, denn Sparks hohe Performance bei sehr großen Datenmengen hat dazu geführt, dass es bereits als Nachfolger von Hadoop angesehen wird. "Vom technischen Standpunkt aus betrachtet ist Spark eine deutlich schnellere und leistungsstärkere Engine als Hadoop", sagt Reynold Xin, Daten-Engineer und Mitgründer von Databricks, also dem Unternehmen, das das Apache-Spark-Projekt anführt. Auch Forrester-Analyst Mike Gualtieri sieht Spark aufgrund der schnelleren Abarbeitung im Vorteil. "Hadoop wurde für große Datenmengen entwickelt, Spark für hohe Geschwindigkeiten", schwärmt er.

Rekordbrechende Performance

Daten schnell sortieren, das ist die Stärke von Hadoop.
Daten schnell sortieren, das ist die Stärke von Hadoop.
Foto: Shawn Hempel - Fotolia.com

Sparks Performance wurde erstmals öffentlich anerkannt, als damit im vorigen Jahr ein neuer Rekord beim Daytona-GraySort erzielt werden konnte. Bei diesem Test sind 100 TByte zu sortieren. Databricks hatte hierzu 206 Maschinen mit knapp 6.600 Kernen eingerichtet. Für den Sort-Job benötigte Sparks nur 23 Minuten - deutlich weniger als der bisherige Rekord von 72 Minuten, der von Yahoo mit Hadoop gehalten wurde. Wobei noch zu berücksichtigen ist, dass bei Hadoop 2.100 Nodes mit über 50.000 Kernen zum Einsatz kamen.

Viel mehr Features als Hadoop

Doch die wesentlich bessere Performance alleine reicht nicht aus, um bereits das Ende von Hadoop zu prophezeien. Mindestens ebenso bedeutend sind die Flexibilität und die Einsatzbreite. So kann Spark in Verbindung mit unterschiedlichen Datenplattformen eingesetzt werden. Außerdem bietet es eine native Unterstützung von In-Memory, inklusive einer optimierten Datenverteilung zwischen Memory und Festplatte. Insofern scheinen diejenigen im Recht zu sein, die ein baldiges Ende von Hadoop erwarten.

Freund und Feind zugleich

Auf das Hadoop-File-System HDFS kann Spark verzichten.
Auf das Hadoop-File-System HDFS kann Spark verzichten.
Foto: Apache Software Foundation

Genau genommen kann Spark beides sein: ein dominierendes Konkurrenzprodukt oder eine ausgezeichnete Ergänzung zu Hadoop. So relativiert auch Gualtieri sein Spark-Lob: "Wenn man bedenkt, dass sich Gegensätze anziehen, dann bilden Spark und Hadoop ein perfektes Team, schließlich sind beides Cluster-Plattformen, die sich auf viele Nodes verteilen lassen und sehr unterschiedliche Vor- und Nachteile aufweisen."

Beim Hadoop-Spezialisten Cloudera unterstreicht man vor allem das gekoppelte Marktinteresse der beiden Plattformen. "Wer heute Hadoop adoptiert, geht fest davon aus, dass Spark dazugehört", sagt deren Cheftechnologe, Eli Collins. Hierzu passt seine Einschätzung, wonach Spark nur eines von vielen Hadoop-Werkzeugen ist - ähnlich wie MapReduce, Drill, Impala und einige andere.

Universelle Datenplattformen

Doch in einem wesentlichen Punkt unterscheidet sich Spark von den vielen anderen Tools: Spark muss nicht notwendigerweise auf dem Hadoop-File-System HDFS aufsetzen. Es ist genauso effizient, wenn es mit anderen Datenplattformen wie AWS S3, HBase oder Apache Cassandra betrieben wird. Cassandra entwickelt sich inzwischen zur bevorzugten Datenplattform für Spark. Laut einer Untersuchung von Typesafe laufen bereits 20 Prozent aller Spark-Instances auf Cassandra.