HBase
 sql >> Datenbank >  >> NoSQL >> HBase

Einführung in den HDFS-Verbund und die Architektur

In diesem Hadoop-Tutorial , werden wir Ihnen eine vollständige Einführung in HDFS Federation geben. In diesem Tutorial besprechen wir die HDFS-Architektur, Einschränkungen der aktuellen Architektur von HDFS.

Anschließend werden wir die HDFS Federation-Architektur zusammen mit ihren Vorteilen im Hadoop-Framework ausführlich behandeln.

Was ist HDFS Federation?

Föderation verbessert ein vorhandenes Hadoop HDFS die Architektur. Frühere HDFS-Architekturen ermöglichen einen einzigen Namespace für den gesamten Cluster. In dieser Architektur verwaltet ein einzelner NameNode den Namespace.

Wenn NameNode ausfällt, ist der gesamte Cluster außer Betrieb. Und der Cluster ist nicht verfügbar, bis der NameNode neu gestartet oder auf einen separaten Computer gebracht wird.

HDFS Federation wurde eingeführt, um diese Einschränkung zu überwinden. Es überwindet dies, indem HDFS Unterstützung für viele NameNode/Namespaces hinzugefügt wird.

Aktuelle HDFS-Architektur

HDFS hat zwei Hauptschichten, die unten angegeben sind:

a) Namespace Diese Ebene verwaltet Dateien, Verzeichnisse und Blöcke . Diese Schicht unterstützt grundlegende Dateisystemoperationen wie das Erstellen und Löschen von Dateien.

b) Speicher blockieren Es besteht aus zwei Teilen-

  • Blockverwaltung –  Es unterstützt blockbezogene Operationen wie das Erstellen, Löschen der Blöcke. Es verwaltet Datenknoten im Cluster und kümmert sich um das Replikationsmanagement.
  • Physischer Speicher –  Dadurch werden die Blöcke im lokalen Dateisystem gespeichert und Zugriff auf Lese- oder Schreibvorgänge bereitgestellt. Folgen Sie diesem Link, um mehr über den Lese- und Schreibvorgang von HDFS-Daten zu erfahren.

Dieses aktuelle HDFS funktioniert gut für kleinere Setups. Für große Organisationen, in denen wir uns um die riesige Datenmenge kümmern müssen, gibt es jedoch einige Einschränkungen. Der Hadoop-Verbund handhabt diese Einschränkungen.

Einschränkung der aktuellen HDFS-Architektur

Einschränkungen der aktuellen HDFS-Architektur sind unten angegeben:

1. Eng gekoppelter Blockspeicher und Namespace

Namespace-Ebene und  Speicherschicht sind eng gekoppelt. Dies erschwert die alternative Implementierung von namenode. Und es beschränkt andere Dienste auf die Verwendung von Blockspeicher.

2. Namespace-Skalierbarkeit

Der Namensraum ist nicht skalierbar wie datanode. Die Skalierung im HDFS-Cluster erfolgt horizontal durch Hinzufügen von Datenknoten. Aber wir können einem bestehenden Cluster keinen weiteren Namespace hinzufügen. Wir können den Namensraum auf einem einzelnen Namensknoten vertikal skalieren.

3. Leistung

Die gesamte Leistung von Hadoop hängt vom Durchsatz des Namensknotens ab. Ein Betrieb des aktuellen Dateisystems hängt vom Durchsatz eines einzelnen Namensknotens ab. NameNode unterstützt derzeit 60.000 gleichzeitige Aufgaben.

Demnächst MapReduce wird mehr als 1.00.000 gleichzeitige Aufgaben unterstützen. Und dies wird mehr Namensknoten benötigen.

4. Isolation

Es gibt keine Trennung des Namensraums. Es gibt also keine Isolierung zwischen Mandantenorganisationen, die den Cluster verwenden.

HDFSFöderationsarchitektur

Federation verwendet viele unabhängige Namenode/Namespaces, um den Namensdienst horizontal zu skalieren. In der HDFS-Verbundarchitektur sind unten Datenknoten vorhanden. Und Datenknoten werden von allen Namensknoten als gemeinsamer Speicher für Blöcke verwendet.

Jeder Datenknoten registriert sich bei allen Namensknoten im Cluster. Diese Datenknoten senden periodische Herzschläge, blockieren, melden und verarbeiten Befehle von den Namensknoten.

Viele Namenodes (NN1, NN2…, NNn) verwalten jeweils viele Namespaces (NS1, NS2…, NSn). Jeder Namespace hat seinen eigenen Blockpool (NS1 hat Pool 1 usw.). Block aus Pool 1 wird auf Datenknoten 1 gespeichert und so weiter.

1. Pool blockieren

Satz von Blöcken ist Blockpool die zu einem einzigen Namensraum gehört. Es gibt eine Sammlung von Pools in der HDFS-Verbundarchitektur. Und jeder Block wird vom anderen verwaltet.

Dadurch kann ein Namespace eine Block-ID erstellen für neue Blöcke ohne Koordination mit einem anderen Namensraum. Alle Datanodes speichern Datenblöcke, die in allen Blockpools vorhanden sind.

2. Namespace-Volume

Namespace zusammen mit seinem Blockpool ist Namespace-Volume . Viele Namespace-Volumes sind im HDFS-Verbund vorhanden. Daher arbeitet jedes Namespace-Volume unabhängig. Wenn wir Namensknoten oder Namensraum löschen, wird auch der entsprechende Blockpool, der auf den Datenknoten vorhanden ist, gelöscht.

Vorteile des HDFS-Verbunds

HDFS Federation überwindet die Einschränkungen früherer HDFS-Architekturen. Daher bietet es:

  • Isolation –  In einer Umgebung mit mehreren Benutzern gibt es keine Isolierung in einem einzelnen Namensknoten. In der HDFS-Föderation können verschiedene Kategorien von Anwendungen und Benutzern durch die Verwendung vieler Namenodes auf verschiedene Namespaces isoliert werden.
  • Namespace-Skalierbarkeit –  In der Föderation skalieren viele Namensknoten im Namensraum des Dateisystems horizontal nach oben.
  • Leistung –  Wir können den Durchsatz von Lese-/Schreiboperationen verbessern, indem wir mehr Namenodes hinzufügen.

Schlussfolgerung

Abschließend zu HDFS Federation können wir sagen, dass es die Beschränkungen der Single-Node-HDFS-Architektur überwindet. In früheren HDFS-Architekturen für einen gesamten Cluster ist nur ein einziger Namespace zulässig. Während Federation viele unabhängige Namenode/Namespaces verwendet, um den Namensdienst horizontal zu skalieren.

Es trennt auch die Namespace-Ebene und der Speicher Schicht. Bietet daher Isolierung, Skalierbarkeit und einfaches Design.

Wenn Sie Fragen oder Vorschläge zum Verbund in Hadoop HDFS haben, lassen Sie es uns wissen, indem Sie einen Kommentar hinterlassen.