Hadoop 2.x vs. 3.x 22-Punkte-Vergleich, Hadoop 3.x Verbesserungen gegenüber 2.x

Hadoop 2.x vs. 3.x 22-Punkte-Vergleich, Hadoop 3.x Verbesserungen gegenüber 2.x

Fragen-Leitfaden
1. Wie toleriert Hadoop 3.x Fehler?
2. Um wie viel hat Hadoop 3.x den Speicheraufwand reduziert?
3. Ist die Hadoop 3.x MR API mit Hadoop 1.x kompatibel?

1. Zweck

In diesem Beitrag diskutieren wir den Vergleich zwischen Hadoop 2.x und Hadoop 3.x. Welche neuen Funktionen wurden in der Hadoop 3-Version hinzugefügt, welche Hadoop 2-Programme sind in Hadoop 3 kompatibel und was ist der Unterschied zwischen Hadoop 2 und Hadoop 3?

2. Vergleich zwischen Hadoop 2.x und Hadoop 3.x

In diesem Abschnitt werden 22 Unterschiede zwischen Hadoop 2.x und Hadoop 3.x beschrieben. Lassen Sie uns nun jeden einzelnen besprechen

2.1Lizenz

Hadoop 2.x – Apache 2.0, Open Source
Hadoop 3.x – Apache 2.0, Open Source

2.2 Mindestens unterstützte Java-Version

Hadoop 2.x – die minimal unterstützte Version von Java ist Java 7
Hadoop 3.x – die minimal unterstützte Version von Java ist Java 8

2.3 Fehlertoleranz

Hadoop 2.x – kann Fehlertoleranz durch Replikation (Speicherplatzverschwendung) handhaben.
Hadoop 3.x – kann Fehlertoleranz durch Erasure Coding handhaben.

2.4 Datenausgleich

Hadoop 2.x – Verwenden Sie zum Datenausgleich den HDFS-Balancer.
Hadoop 3.x – Verwenden Sie zum Datenausgleich den Intra-Data Node Balancer, der über die CLI des HDFS Disk Balancer aufgerufen wird.

2.5 Speicherschema

Hadoop 2.x - 3X-Replikatsschema verwenden
Hadoop 3.x – Unterstützt Erasure Coding in HDFS.

2.6 Speicheraufwand

Hadoop 2.x – HDFS hat 200 % Overhead beim Speicherplatz.
Hadoop 3.x – Der Speicheraufwand beträgt nur 50 %.

2.7 Beispiel für Speicher-Overhead

Hadoop 2.x – Wenn 6 Blöcke vorhanden sind, belegen aufgrund des Replikationsschemas 18 Blöcke den Speicherplatz.
Hadoop 3.x – Wenn 6 Blöcke vorhanden sind, beträgt der Speicherplatz 9 Blöcke, wobei 6 Blöcke Speicherplatz und 3 Blöcke für die Parität verwendet werden.

2.8YARN-Timeline-Dienst

Hadoop 2.x – Verwendet den alten Timeline-Dienst, der Skalierbarkeitsprobleme hat.
Hadoop 3.x – Verbessert den Timeline Service v2 und verbessert die Skalierbarkeit und Zuverlässigkeit des Timeline Service.

2.9 Standard-Portbereich

Hadoop 2.x – In Hadoop 2.0 liegen einige der Standardports im temporären Portbereich von Linux. Daher ist beim Start keine Bindung möglich.
Hadoop 3.x – In Hadoop 3.0 wurden diese Ports jedoch aus dem temporären Bereich verschoben.

2.10 Werkzeuge

Hadoop 2.x – Verwenden Sie Hive, Pig, Tez, Hama, Giraph und andere Hadoop-Tools.
Hadoop 3.x – Sie können Hive, Pig, Tez, Hama, Giraph und andere Hadoop-Tools verwenden.

2.11 kompatible Dateisysteme

Hadoop 2.x – HDFS (Standard-FS), FTP-Dateisystem: Es speichert alle Daten auf einem remote zugänglichen FTP-Server. Amazon S3 (Simple Storage Service)-Dateisystem Windows Azure Storage Blob (WASB)-Dateisystem.
Hadoop 3.x – Es unterstützt alle vorherigen sowie das Microsoft Azure Data Lake-Dateisystem.

2.12Datanode-Ressourcen

Hadoop 2.x – Datanode-Ressourcen sind nicht für MapReduce reserviert, wir können sie für andere Anwendungen verwenden.
Hadoop 3.x – Hier können Datenknotenressourcen auch für andere Anwendungen verwendet werden.

2.13MR API-Kompatibilität

Hadoop 2.x – MR API kompatibel mit Hadoop 1.x-Programmen, ausführbar auf Hadoop 2.X
Hadoop 3.x − Hier wird die MR-API mit der Ausführung von Hadoop 1.x-Programmen kompatibel gemacht, um sie auf Hadoop 3.X auszuführen.

2.14 Unterstützung für Microsoft Windows

Hadoop 2.x – Kann unter Windows bereitgestellt werden.
Hadoop 3.x – Es unterstützt auch Windows.

2.15 Steckplätze/Behälter

Hadoop 2.x – Hadoop 1 arbeitete am Konzept der Slots, aber Hadoop 2.X arbeitet am Konzept der Container. Über Container können wir allgemeine Aufgaben ausführen.
Hadoop 3.x – Funktioniert auch mit dem Konzept von Containern.

2.16 Einzelner Ausfallpunkt

Hadoop 2.x – Verfügt über die SPOF-Funktion, sodass Namenode bei einem Ausfall automatisch wiederhergestellt wird.
Hadoop 3.x – Verfügt über die SPOF-Funktion, sodass bei einem Ausfall des Namenode dieser automatisch wiederhergestellt wird und kein menschliches Eingreifen zur Behebung des Problems erforderlich ist.

2.17 HDFS-Allianz

Hadoop 2.x – In Hadoop 1.0 gab es nur einen NameNode zur Verwaltung aller Namespaces, aber in Hadoop 2.0 werden mehrere NameNodes für mehrere Namespaces verwendet.
Hadoop 3.x – Hadoop 3.x hat auch mehrere Namespaces für mehrere Namespaces.

2.18 Skalierbarkeit

Hadoop 2.x – Wir können auf bis zu 10.000 Knoten pro Cluster skalieren.
Hadoop 3.x – Bessere Skalierbarkeit. Wir können auf über 10.000 Knoten pro Cluster skalieren.

2.19 Schnellerer Zugriff auf Daten

Hadoop 2.x – Dank des Datenknoten-Cache können wir schnell auf Daten zugreifen.
Hadoop 3.x – Auch hier können wir über den Datanode-Cache schnell auf Daten zugreifen.

2.20HDFS-Schnappschuss

Hadoop 2.x – Hadoop 2 hat Unterstützung für Snapshots hinzugefügt. Es bietet Notfallwiederherstellung und Schutz vor Benutzerfehlern.
Hadoop 3.x – Hadoop 2 unterstützt auch die Snapshot-Funktionalität.

2.21 Plattform

Hadoop 2.x – kann als Plattform für verschiedene Datenanalysen, die Ausführung von Ereignisverarbeitungen, Streaming und Echtzeitvorgängen verwendet werden.
Hadoop 3.x – Auch hier können Ereignisverarbeitung, Streaming und Echtzeitvorgänge auf YARN ausgeführt werden.

2.22 Cluster-Ressourcenverwaltung

Hadoop 2.x – Verwendet YARN zur Verwaltung von Clusterressourcen. Es verbessert Skalierbarkeit, Hochverfügbarkeit und Mandantenfähigkeit.
Hadoop 3.x – Für die Cluster-Ressourcenverwaltung wird YARN mit allen Funktionen verwendet.

Verbesserungen von hadoop3.X gegenüber hadoop2.x

Gemeinsame wesentliche Verbesserungen:
Shell-Skript neu schreiben
Entfernung veralteter APIs

HDFS-Verbesserungen:
Unterstützt Erasure Encoding
Unterstützt mehr als zwei Namenodes
Datenbilanz
Mehrere Service-Ports haben sich geändert

Garnverbesserungen:
YARN-Timeline-Dienst v.2
Unterstützung für opportunistische Container und verteilte Planung

MapRduece-Verbesserungen:
Native Optimierung auf MapReduce-Taskebene
Überarbeitetes Daemon- und Task-Heap-Management

Weitere neue Funktionen:
Gemeinsam genutzte Client-JARs

Abschluss

Nachdem wir 22 wichtige Unterschiede zwischen Hadoop 2.x und Hadoop 3.x sowie die Verbesserungen in 3.x besprochen haben, können wir jetzt sehen, was besser ist: Hadoop 2 oder Hadoop 3.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Hadoop NameNode-Föderation
  • Erläuterung der neuen Funktion von Hadoop 2.X, der Papierkorbfunktion
  • Anwendung von Hadoop-Zählern und Datenbereinigung
  • Ein praktisches Tutorial zum Erstellen einer vollständig verteilten Hadoop-Umgebung unter Ubuntu 16.4
  • So erstellen Sie eine Hadoop-Clusterumgebung mit Ubuntu Docker
  • Detaillierte Schritte zum Erstellen von Hadoop in CentOS
  • Beispielcode für die Wortzählung in Hadoop
  • Java/Web ruft Hadoop für MapReduce-Beispielcode auf
  • Erläuterung des Arbeitsmechanismus von Namenode und SecondaryNameNode in Hadoop

<<:  Detailliertes Tutorial zur Installation von MySQL unter Linux

>>:  Lösung für die Upload-Einschränkung von Element-ui-Uploaddateien

Artikel empfehlen

Kann Docker das nächste „Linux“ werden?

Das Linux-Betriebssystem hat das Rechenzentrum in...

Der Prozess der Installation von MySQL 8.0.26 auf CentOS7

1. Laden Sie zunächst die entsprechende Datenbank...

js implementiert das klassische Minesweeper-Spiel

In diesem Artikelbeispiel wird der spezifische Co...

Beispielcode zur Implementierung des wellenförmigen Wasserballeffekts mit CSS

Heute habe ich einen neuen CSS-Spezialeffekt gele...

Häufige Probleme und Lösungen beim Erstellen von MySQL MGR

Inhaltsverzeichnis 01 Häufige Fehler 1 02 Häufige...

Gemeinsame Eigenschaften des Framesets (Unterteilung von Frames und Fenstern)

Ein Frame ist ein Webseitenbildschirm, der in mehr...

js, um den Zahlungs-Countdown zu realisieren und zur Startseite zurückzukehren

Zahlungs-Countdown, um zur Startseite zurückzukeh...

Linux verwendet iftop, um den Netzwerkkartenverkehr in Echtzeit zu überwachen

Linux verwendet iftop, um den Verkehr der Netzwer...

Docker ermöglicht mehrere Port-Mapping-Befehle

wie folgt: docker run -d -p 5000:23 -p 5001:22 --...

js implementiert Axios Limit-Anforderungswarteschlange

Inhaltsverzeichnis Der Hintergrund ist: Was wird ...

Eine kurze Analyse der parallelen WriteSet-Replikation von MySQL

【Historischer Hintergrund】 Ich arbeite seit drei ...