Client-Knoten eines HDFS-Clusters Was ist ein DataNode?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Dr. Jürgen Ehneß

Ein DataNode ist ein Client-Knoten im Hadoop Distributed File System. Neben den Client-Knoten gibt es den Master-Knoten, der als „NameNode“ bezeichnet wird. Aufgabe der DataNodes ist die Speicherung der Daten. Dateien werden hierfür in Blöcke aufgeteilt und auf verschiedenen DataNodes abgelegt. Für die Organisation der Daten, die Verwaltung des Namespaces und das Speichern der Metadaten ist der NameNode verantwortlich.

Firma zum Thema

Die wichtigsten IT-Fachbegriffe verständlich erklärt.
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - Fotolia)

DataNode ist die Bezeichnung eines Client-Knotens eines HDFS-Clusters. Die Abkürzung HDFS steht für „Hadoop Distributed File System“. Das Filesystem ermöglicht das verteilte Speichern großer Datenmengen in einem Rechnerverbund. Der Name des Master-Knotens eines Clusters lautet „NameNode“.

Während auf den DataNodes die eigentlichen Daten gespeichert sind, übernimmt der NameNode die Aufgabe der Organisation der Daten auf den DataNodes, die Verwaltung des Namespaces und das Speichern der Metadaten. Funktionen wie das Öffnen, Umbenennen oder Schließen von Dateien erfolgen über den NameNode.

Die Abarbeitung dieser Aktionen überträgt der Master-Knoten den DataNodes. Sie bedienen die Schreib- und Lese-Requests. NameNodes und DataNodes lassen sich auf Standard-Hardware betreiben. Die Knoten sind in Software realisiert und benötigen zur Ausführung Java.

Grundsätzliches zum HDFS

Das Hadoop Distributed File System ist eine wichtige Komponente des Apache Frameworks Hadoop. Es ist in der Lage, riesige Datenmengen hochverfügbar zu speichern. HDFS und das Hadoop Framework kommen beispielsweise für Anwendungsfälle im Big-Data-Umfeld zum Einsatz. Die integrierten Duplizierungsmechanismen der Daten sorgen dafür, dass sich Ausfälle einzelner Rechner im Clusterverbund ohne Datenverlust abfangen lassen.

Hadoop Cluster können aus vielen hundert oder tausend einzelnen Knoten bestehen. Weitere Kernkomponenten des Hadoop Frameworks sind neben HDFS der MapReduce-Algorithmus, der Yet Another Resource Negotiator (YARN) und Hadoop Common.

Ablauf eines Speichervorgangs in HDFS

Für das bessere Verständnis der Aufgaben der DataNodes und des NameNodes im Folgenden eine nähere Betrachtung des Ablaufs eines Speichervorgangs in HDFS. Ein Client, der eine Datei im Hadoop Distributed File System speichern möchte, wendet sich zunächst an den NameNode. Der NameNode generiert einen Eintrag im Filesystem, speichert die Metadaten der Datei und legt die zuständigen DataNodes fest, auf denen die Datei in Blöcke aufgespaltet gespeichert werden soll. Die Datenblöcke werden anschließend auf die DataNodes geschrieben.

Um Datenverlust beim Ausfall einzelner DataNodes zu verhindern, findet eine Replikation der Datenblöcke auf verschiedenen DataNodes statt. Der Grad der Replikation lässt sich konfigurieren. Erst wenn alle DataNodes den Abschluss des Schreibvorgangs gemeldet haben, registriert der NameNode den Speichervorgang der Datei als erfolgreich.

(ID:46931828)

Über den Autor