Cluster

Zwei Kollegen in Anzügen diskutieren über einen Cluster auf einem Laptop.

Hadoop ist ein Open-Source-Software-Stack, der skalierbar Datenmanagement auf einer eng gekoppelten Sammlung von Standardservern bietet. Der Cluster arbeitet in einer Primär-Sekundär-Konfiguration mit einem einzelnen Nameserver-Knoten und mehreren Worker-Knoten. Zu den Komponenten der Basisdistribution gehören ein verteiltes Dateisystem und ein Workload , der eine hochgradig skalierbar, parallele Datenverarbeitung ermöglicht. Hadoop eignet sich besonders gut für big data .

Warum sind Hadoop-Cluster wichtig?

Hadoop ist für Unternehmen unverzichtbar, da es eine skalierbar parallele Datenverarbeitung für große Datenmengen ermöglicht. Vor Hadoop gab es High-Performance und massiv parallele Verarbeitung nur auf proprietärer Hardware und Software, was sie für kleinere Unternehmen unerreichbar machte.

Das Unternehmen kann die empfohlene Apache-Distribution verwenden oder eine der vielen kommerziellen Cloud wählen.

Hadoop-Cluster sind elastisch, da sie das einfache Hinzufügen oder Entfernen von Knoten ermöglichen, um den sich ändernden Workload gerecht zu werden.

Software-Module eines Cluster

Im Folgenden werden die vier gemeinsamen Komponenten der Hadoop-Distribution beschrieben.

Hadoop Allgemein

Die gemeinsamen Bibliotheken und Dienstprogramme, die die anderen Hadoop-Module unterstützen.

MapReduce

MapReduce ermöglicht die effiziente parallele Verarbeitung großer Datenmengen über mehrere Cluster , um Datenmengen zu komprimieren. Die Aufgabe konvertiert die Quelldaten in Schlüssel/Wert-Paare in einen Datensatz. Die Ausgabe der Aufgabe wird von der Aufgabe zu einem kleineren Datensatz zusammengefasst.

Verteiltes Dateisystem Hadoop (HDFS™)

HDFS verteilt große Datendateien auf die Knoten eines geclusterten Systems. Anwendungen, die das HDFS nutzen, Nutzen von einem parallelen Zugriff, der mehrere Server für eine schnelle Anfrage und einen hohen Datendurchsatz verwendet. HDFS speichert große Dateien über mehrere Knoten eines Cluster. Die Daten werden durch Replikation über die Knoten hinweg geschützt. Standardmäßig werden die Daten auf drei Knoten repliziert. Die Datenknoten können die Daten neu ausbalancieren, um eine gleichmäßige Verteilung zu gewährleisten.

Hadoop HDFS verwendet die folgenden Dateidienste:

Die fünf Dienste sind wie folgt:

  • Der Namensknoten ist der primäre Knoten, der verfolgt, wo jeder Datenblock gespeichert ist, einschließlich der Replikate. Dieser Knoten hält den Kontakt zu den Clients aufrecht.
  • Der Secondary Name Node verwaltet die Checkpoints der vom Name Node verwendeten Metadaten des Dateisystems.
  • Der Job Tracker empfängt Anfragen zur Map-Reduce-Ausführung und kommuniziert mit dem Name Node, um den Standort der zu verarbeitenden Daten zu ermitteln.
  • Datenknoten fungieren als sekundäre Aufgaben für den Job Tracker.
  • Aufgabe fungieren als Sklaven des Job-Trackers.

Hadoop YARN

YARN (Yet Another Resource Negotiator) verwaltet globale (Cluster) Ressourcen und plant die Anwendungsaufträge im gesamten Cluster. Ressourcen werden als CPU, Netzwerk, Festplatte und Speicher definiert. Anwendungscontainer fordern Ressourcen von ihrem Anwendungsmanager an, der Anfragen an den NodeManager des Servers weiterleitet, der wiederum Anfragen an den globalen ResourceManager weiterleitet.

Die Entwicklung von Hadoop

Im Jahr 2002 begannen Doug Cutting und Mike Cafarella mit der Arbeit am Apache Nutch-Projekt. Im Jahr 2004 implementierten sie das, was sie aus den Google-Whitepapers über das Google File System und MapReduce gelernt hatten, in das Apache Nutch-Projekt. 2007 begann Yahoo mit der Verwendung von Hadoop in einem Cluster mit 1000 Knoten. Im Jahr 2009 wurde Hadoop zur Sortierung eines Datensatz von einem Petabyte verwendet. Im Jahr 2011 veröffentlichte die Apache Software Foundation die Version 1.0 von Apache Hadoop.

Hadoop-Verteilungen

Die Basisversion von Hadoop wird im Rahmen eines Apache-Open-Source-Projekts gepflegt. Softwareanbieter vertreiben erweiterte Versionen, die sie pflegen und unterstützen. Cloudera, Hortonworks (jetzt Teil von Cloudera) und AWS HDInsight sind Beispiele für Hadoop-Distributionen.

Apache Spark™.

Apache Spark™ ist eine mehrsprachige Engine für die Ausführung von Aufgaben in den Bereichen Data Engineering, data science und Maschinelles Lernen auf Einzelknotenrechnern oder Clustern.

Actian Datenplattform und Hadoop

Dank ihrer MPP-Architektur (Massively Parallel Processing) skaliert die Actian Data Platform auf Tausende von Knoten und bietet über ihren Konnektor direkten Zugriff auf Hadoop-Datenformate. Die Actian Data Platform kann Daten im Hadoop Distributed File System (HDFS) speichern und nutzt dabei ihr eigenes Datenformat zum Schutz der Daten. Abfragen können innerhalb eines Serverknotens und knotenübergreifend mit YARN parallelisiert werden, um Arbeitsaufgaben zu planen und zu koordinieren.