Hadoop-Distributionen und -Grundlagen im Überblick

Hadoop mischt den Big-Data-Markt auf

14.11.2014
Von 
Thomas Drilling ist als freier IT-Journalist und IT-Consultant tätig. Seine Spezialgebiete sind Linux und Open-Source-Software.

Amazon Elastic Map Reduce (EMR)

Wer zunächst keinen eigenen Hadoop-Cluster aufbauen möchte, sollte einen Blick auf die Amazon Web Services (AWS) werfen. Amazon stellt hier seine eigene Hadoop-Distribution Amazon Elastic MapReduce (Amazon EMR) als Web-Service zur Verfügung. Anfangs bestand der Nachteil von Amazon EMR darin, dass als Compute-Engine Amazons Elastic Cloud (EC2) sowie Amazon S3 als Storage-Backend anstelle von HDFS zum Einsatz kamen und EMR ausschließlich für die Zusammenarbeit mit EC2 und S3 optimiert war. Inzwischen kann Amazon EMR problemlos mehrere Datenspeicher anbinden, einschließlich Amazon S3, aber auch das Hadoop Distributed File System (HDFS) oder Amazon DynamoDB. S3 eignete sich zudem ursprünglich aufgrund der langsameren Geschwindigkeit von S3 nur bedingt als Speicher für Big-Data-Projekte. Aber auch daran hat Amazon inzwischen gearbeitet, sodass sich in Amazon S3 nun auch sehr große Datenmengen verarbeiten lassen sollten. Amazon Elastic Map Reduce unterstützt inzwischen alle Hadoop-Versionen von 0.20 über 1.0.3 bis zu den aktuellen Versionen 2.2 und 2.4. Darüber hinaus arbeitet EMR auch mit den Cluster-Typen Hive, Custom JAR, Pig, Hbase und Streaming.

Beim Start eines EMR-Clusters streamt Amazon EMR die Daten von Amazon S3 zu jeder Instance des Clusters und beginnt unmittelbar mit der Verarbeitung. Das Speichern der Daten in S3 hat im Zusammenhang mit EMR theoretisch sogar den Vorteil, dass Nutzer mehrere Cluster zur Verarbeitung der gleichen Daten verwenden können. So lässt sich in EMR zum Beispiel ein für Arbeitsspeicher und CPU optimierter Hive-Cluster zu Entwicklungszwecken betreiben und gleichzeitig ein produktiver für IO optimierter HBase-Cluster.

Amazon und HDFS

Amazon Elastic MapReduce kann jetzt auch mit HDFS und anderen Storage-Typen betrieben werden.
Amazon Elastic MapReduce kann jetzt auch mit HDFS und anderen Storage-Typen betrieben werden.
Foto: Amazon

Außerdem kann EMR inzwischen auch mit HDFS oder Amazon DynamoDB als Storage betrieben werden. Bei Amazon EMR arbeitet HDFS mit flüchtiger Speicherung, wobei es sich je nach Instance-Typ um Solid-State-Laufwerke oder Spinning-Disks handelt. Da jede Instance eines EMR-Cluster über eine lokale flüchtige Speicherung verfügt, kann der Anwender selbst entscheiden, auf welchen Instances er HDFS nutzen will. Solche Instanzen heißen in EMR Core-Knoten, die übrigen Task-Knoten. Darüber hinaus bietet Amazon EMR den Vorteil, dass Amazon von sich aus das komplette Cluster-Management erledigt. Daher wird sich Amazon Elastic MapReduce neben Hortonworks und Cloudera zweifelsohne im Markt halten, weil nirgendwo die Einstiegshürde in Big Data niedriger ist. Das betrifft vor allem die Punkte Benutzerfreundlichkeit und Kosten. Ein EMR-Cluster lässt sich bei Bedarf binnen Minuten starten. Der Nutzer muss sich nicht um die Bereitstellung von Clustern, das Einrichten von Nodes oder das Konfigurieren von Hadoop an sich kümmern, sondern kann sich ganz auf die eigentlichen Analyseprojekte konzentrieren. Wie bei allen AWS-Diensten funktioniert das Ganze hochflexibel und elastisch. Kunden können die Anzahl benötigter Instanzen jederzeit problemlos bis zu mehreren tausend erhöhen oder verringern. Die Kosten sind dabei von Anfang an transparent. Ein Amazon-Hadoop-Cluster mit zehn Knoten lässt sich beispielsweise ab 0,15 Dollar pro Stunde betreiben. Amazon stellt zudem ein ausführliches Tutorial für die Inbetriebnahme zur Verfügung. (pg)