HDFS-Tutorial: Einführung in HDFS und seine Funktionen



Dieses HDFS-Tutorial-Blog hilft Ihnen dabei, das verteilte HDFS- oder Hadoop-Dateisystem und seine Funktionen zu verstehen. Sie werden auch kurz die Kernkomponenten untersuchen.

HDFS-Tutorial

Bevor ich in diesem HDFS-Tutorial-Blog fortfahre, möchte ich Sie durch einige der verrückten Statistiken zu HDFS führen:

  • In 2010, Facebook behauptete, einen der größten HDFS-Cluster-Speicher zu haben 21 Petabyte von Dateien.
  • In 2012, Facebook erklärte, dass sie den größten einzelnen HDFS-Cluster mit mehr als haben 100 PB von Dateien .
  • Und Yahoo ! hat mehr als 100.000 CPU in mehr als 40.000 Server Hadoop wird ausgeführt, wobei der größte Hadoop-Cluster ausgeführt wird 4.500 Knoten . Insgesamt hat Yahoo! Shops 455 Petabyte von Daten in HDFS.
  • Tatsächlich nutzten 2013 die meisten großen Namen der Fortune 50 Hadoop.

Zu schwer zu verdauen? Recht. Wie in Hadoop hat zwei grundlegende Einheiten - S. sich aufregen und wird bearbeitet . Wenn ich Speicherteil von Hadoop sage, beziehe ich mich auf HDFS welches dafür steht Hadoop Distributed File System . In diesem Blog stelle ich Ihnen vor HDFS .





Hier werde ich sprechen über:

  • Was ist HDFS?
  • Vorteile von HDFS
  • Funktionen von HDFS

Bevor ich über HDFS spreche, möchte ich Ihnen sagen, was ein verteiltes Dateisystem ist.



DFS oder verteiltes Dateisystem:

Distributed File System spricht über Verwaltung Daten d.h. Dateien oder Ordner auf mehreren Computern oder Servern. Mit anderen Worten, DFS ist ein Dateisystem, mit dem wir Daten über mehrere Knoten oder Maschinen in einem Cluster speichern und mehreren Benutzern den Zugriff auf Daten ermöglichen können. Im Grunde dient es dem gleichen Zweck wie das Dateisystem, das auf Ihrem Computer verfügbar ist, z. B. für Windows mit NTFS (New Technology File System) oder für Mac mit HFS (Hierarchical File System). Der einzige Unterschied besteht darin, dass Sie im Fall eines verteilten Dateisystems Daten auf mehreren Computern und nicht auf einem einzelnen Computer speichern. Obwohl die Dateien im Netzwerk gespeichert sind, organisiert und zeigt DFS Daten so an, dass ein Benutzer, der auf einem Computer sitzt, das Gefühl hat, dass alle Daten auf diesem Computer gespeichert sind.

Was ist HDFS?

Hadoop Distributed File System oder HDFS ist ein Java-basiertes verteiltes Dateisystem, mit dem Sie große Datenmengen auf mehreren Knoten in einem Hadoop-Cluster speichern können. Wenn Sie also Hadoop installieren, erhalten Sie HDFS als zugrunde liegendes Speichersystem zum Speichern der Daten in der verteilten Umgebung.

Nehmen wir ein Beispiel, um es zu verstehen. Stellen Sie sich vor, Sie haben zehn Computer oder zehn Computer mit einer Festplatte von 1 TB auf jedem Computer. Laut HDFS erhalten Sie HDFS als Speicherdienst, wenn Sie Hadoop als Plattform auf diesen zehn Computern installieren. Das verteilte Hadoop-Dateisystem ist so verteilt, dass jeder Computer seinen individuellen Speicher zum Speichern jeglicher Art von Daten bereitstellt.



HDFS-Tutorial: Vorteile von HDFS

1. Verteilter Speicher:

Verteilter Speicher - HDFS-Lernprogramm - Edureka

Wenn Sie von einem der zehn Computer im Hadoop-Cluster auf das verteilte Hadoop-Dateisystem zugreifen, haben Sie das Gefühl, Sie haben sich bei einem einzelnen großen Computer mit einer Speicherkapazität von 10 TB angemeldet (Gesamtspeicher über zehn Computer). Was bedeutet das? Dies bedeutet, dass Sie eine einzelne große Datei mit 10 TB speichern können, die auf die zehn Computer verteilt wird (jeweils 1 TB).So ist es nicht auf die physischen Grenzen beschränkt jeder einzelnen Maschine.

2. Verteilte und parallele Berechnung:

Da die Daten auf die Maschinen verteilt sind, können wir sie nutzen Verteilte und parallele Berechnung . Lassen Sie uns dieses Konzept anhand des obigen Beispiels verstehen. Angenommen, die Verarbeitung von 1 TB-Datei auf einem einzelnen Computer dauert 43 Minuten. Sagen Sie mir jetzt, wie viel Zeit wird es dauern, dieselbe 1-TB-Datei zu verarbeiten, wenn Sie 10 Computer in einem Hadoop-Cluster mit ähnlicher Konfiguration haben - 43 Minuten oder 4,3 Minuten? 4,3 Minuten, richtig! Was ist hier passiert? Jeder der Knoten arbeitet parallel mit einem Teil der 1-TB-Datei. Daher ist die Arbeit, die zuvor 43 Minuten dauerte, in nur 4,3 Minuten abgeschlossen, da die Arbeit auf zehn Maschinen aufgeteilt wurde.

3. Horizontale Skalierbarkeit:

Lassen Sie uns zu guter Letzt über das sprechen horizontale Skalierung oder Skalieren in Hadoop. Es gibt zwei Arten der Skalierung: vertikal und horizontal . Bei der vertikalen Skalierung (Scale-up) erhöhen Sie die Hardwarekapazität Ihres Systems. Mit anderen Worten, Sie beschaffen mehr RAM oder CPU und fügen es Ihrem vorhandenen System hinzu, um es robuster und leistungsfähiger zu machen. Mit vertikaler Skalierung oder Skalierung sind jedoch Herausforderungen verbunden:

  • Es gibt immer eine Grenze, bis zu der Sie Ihre Hardwarekapazität erhöhen können. Sie können also den Arbeitsspeicher oder die CPU des Computers nicht weiter erhöhen.
  • Bei der vertikalen Skalierung stoppen Sie zuerst Ihre Maschine. Dann erhöhen Sie den RAM oder die CPU, um einen robusteren Hardware-Stack zu erhalten. Nachdem Sie Ihre Hardwarekapazität erhöht haben, starten Sie den Computer neu. Diese Ausfallzeit beim Stoppen Ihres Systems wird zu einer Herausforderung.

Im Falle von horizontale Skalierung (verkleinern) Fügen Sie dem vorhandenen Cluster weitere Knoten hinzu, anstatt die Hardwarekapazität einzelner Computer zu erhöhen. Und vor allem können Sie Fügen Sie weitere Maschinen für unterwegs hinzu ohne das System anzuhalten . Daher haben wir beim Skalieren keine Ausfallzeit oder Grünzone, nichts dergleichen. Am Ende des Tages werden mehr Maschinen parallel arbeiten, um Ihre Anforderungen zu erfüllen.

Wie benutzt man Logger in Java?

HDFS Tutorial Video:

Sie können sich das folgende Video ansehen, in dem alle Konzepte im Zusammenhang mit HDFS ausführlich besprochen wurden:

HDFS-Tutorial: Funktionen von HDFS

Wir werden diese Funktionen im Detail verstehen, wenn wir die HDFS-Architektur in unserem nächsten HDFS-Tutorial-Blog untersuchen. Lassen Sie uns zunächst einen Überblick über die Funktionen von HDFS geben:

  • Kosten: Das HDFS wird im Allgemeinen auf einer Standardhardware wie Ihrem Desktop / Laptop bereitgestellt, die Sie täglich verwenden. Es ist also sehr wirtschaftlich in Bezug auf die Betriebskosten des Projekts. Da wir kostengünstige Standardhardware verwenden, müssen Sie nicht viel Geld für die Skalierung Ihres Hadoop-Clusters ausgeben. Mit anderen Worten, das Hinzufügen weiterer Knoten zu Ihrem HDFS ist kostengünstig.
  • Vielfalt und Datenvolumen: Wenn wir über HDFS sprechen, sprechen wir über das Speichern großer Datenmengen, d. H. Terabyte und Petabyte an Daten und verschiedener Arten von Daten. Sie können also jede Art von Daten in HDFS speichern, sei es strukturiert, unstrukturiert oder halbstrukturiert.
  • Zuverlässigkeit und Fehlertoleranz: Wenn Sie Daten in HDFS speichern, werden die angegebenen Daten intern in Datenblöcke unterteilt und auf Ihrem Hadoop-Cluster verteilt gespeichert. Die Informationen darüber, welcher Datenblock sich auf welchem ​​der Datenknoten befindet, werden in den Metadaten aufgezeichnet. NameNode verwaltet die Metadaten und die Datenknoten sind für die Speicherung der Daten verantwortlich.
    Der Namensknoten repliziert auch die Daten, d. H. Erhält mehrere Kopien der Daten. Diese Replikation der Daten macht HDFS sehr zuverlässig und fehlertolerant. Selbst wenn einer der Knoten ausfällt, können wir die Daten von den Replikaten abrufen, die sich auf anderen Datenknoten befinden. Standardmäßig ist der Replikationsfaktor 3. Wenn Sie also 1 GB Datei in HDFS speichern, belegt diese schließlich 3 GB Speicherplatz. Der Namensknoten aktualisiert die Metadaten regelmäßig und hält den Replikationsfaktor konsistent.
  • Datenintegrität: Data Integrity gibt Auskunft darüber, ob die in meinem HDFS gespeicherten Daten korrekt sind oder nicht. HDFS überprüft ständig die Integrität der gespeicherten Daten anhand seiner Prüfsumme. Wenn es einen Fehler findet, meldet es dies dem Namensknoten. Anschließend erstellt der Namensknoten zusätzliche neue Replikate und löscht daher die beschädigten Kopien.
  • Hoher Durchsatz: Der Durchsatz ist der Arbeitsaufwand in einer Zeiteinheit. Es wird erläutert, wie schnell Sie über das Dateisystem auf die Daten zugreifen können. Grundsätzlich erhalten Sie einen Einblick in die Systemleistung. Wie Sie im obigen Beispiel gesehen haben, haben wir zehn Maschinen zusammen verwendet, um die Berechnung zu verbessern. Dort konnten wir die Bearbeitungszeit von reduzieren 43 Minuten zu einem bloßen 4,3 Minuten da alle Maschinen parallel arbeiteten. Durch die parallele Verarbeitung von Daten konnten wir die Verarbeitungszeit erheblich verkürzen und so einen hohen Durchsatz erzielen.
  • Datenlokalität: Bei der Datenlokalität geht es darum, die Verarbeitungseinheit auf Daten zu verschieben und nicht die Daten auf die Verarbeitungseinheit. In unserem traditionellen System haben wir die Daten in die Anwendungsschicht gebracht und dann verarbeitet. Aufgrund der Architektur und des großen Datenvolumens wird es nun möglich sein, die Daten auf die Anwendungsschicht zu bringenReduzieren Sie die Netzwerkleistung spürbar.In HDFS bringen wir den Berechnungsteil zu den Datenknoten, auf denen sich die Daten befinden. Daher verschieben Sie die Daten nicht, sondern bringen das Programm oder den Prozess mitTeil der Daten.

Jetzt haben Sie eine kurze Vorstellung von HDFS und seinen Funktionen. Aber glauben Sie mir, das ist nur die Spitze des Eisbergs. In meinem nächsten Ich werde tief in die eintauchen HDFS-Architektur und ich werde die Geheimnisse hinter dem Erfolg von HDFS enthüllen. Gemeinsam werden wir all die Fragen beantworten, die in Ihrem Kopf auftauchen, wie zum Beispiel:

  • Was passiert hinter den Kulissen, wenn Sie Daten in Hadoop Distributed File System lesen oder schreiben?
  • Welche Algorithmen wie die Rack-Erkennung machen HDFS so fehlertolerant?
  • Wie verwaltet und erstellt Hadoop Distributed File System Replikate?
  • Was sind Blockoperationen?

Nachdem Sie HDFS und seine Funktionen verstanden haben, lesen Sie die von Edureka, einem vertrauenswürdigen Online-Lernunternehmen mit einem Netzwerk von mehr als 250.000 zufriedenen Lernenden auf der ganzen Welt. Der Edureka Big Data Hadoop-Zertifizierungskurs hilft Lernenden, Experten für HDFS, Garn, MapReduce, Schwein, Bienenstock, HBase, Oozie, Flume und Sqoop zu werden. Dabei werden Anwendungsfälle in Echtzeit in den Bereichen Einzelhandel, soziale Medien, Luftfahrt, Tourismus und Finanzen verwendet.

Hast du eine Frage an uns? Bitte erwähnen Sie es in den Kommentaren und wir werden uns bei Ihnen melden.