Was ist der Unterschied zwischen HDFS und MapReduce?

Das Hauptunterschied zwischen HDFS und MapReduce ist das HDFS ist ein verteiltes Dateisystem, das Zugriff auf Anwendungsdaten mit hohem Durchsatz bietet, während MapReduce ein Software-Framework ist, das Big Data in großen Clustern zuverlässig verarbeitet.

Big Data ist eine Sammlung eines großen Datensatzes. Es hat drei Haupteigenschaften: Volumen, Geschwindigkeit und Vielfalt. Hadoop ist eine Software, mit der große Daten gespeichert und verwaltet werden können. Es ist ein in Java geschriebenes Open Source-Framework. Darüber hinaus unterstützt es die verteilte Verarbeitung großer Datenmengen über mehrere Computercluster hinweg. HDFS und MapReduce sind zwei Module in der Hadoop-Architektur.

Wichtige Bereiche

1. Was ist HDFS?
     - Definition, Funktionalität
2. Was ist MapReduce?
     - Definition, Funktionalität
3. Was ist der Unterschied zwischen HDFS und MapReduce?
     - Vergleich der wichtigsten Unterschiede

Schlüsselbegriffe

Big Data, HDFS, MapReduce

Was ist HDFS?

HDFS steht für Hadoop Distributed File System. Es ist ein verteiltes Dateisystem von Hadoop, das zuverlässig und effizient in großen Clustern ausgeführt werden kann. Außerdem basiert es auf dem Google File System (GFS). Darüber hinaus enthält es eine Liste von Befehlen, um mit dem Dateisystem zu interagieren.

Darüber hinaus arbeitet das HDFS gemäß der Master-Slave-Architektur. Der Master- oder Namensknoten verwaltet die Dateisystem-Metadaten, während die Slave-Knoten oder die Datennotizen tatsächliche Daten speichern.

Abbildung 1: HDFS-Architektur

Außerdem ist eine Datei in einem HDFS-Namespace in mehrere Blöcke aufgeteilt. Datenknoten speichern diese Blöcke. Und der Namensknoten ordnet die Blöcke den Datenknoten zu, die die Lese- und Schreibvorgänge mit dem Dateisystem ausführen. Darüber hinaus führen sie Aufgaben wie das Anlegen von Blöcken, das Löschen usw. gemäß den Anweisungen des Namensknotens aus.

Was ist MapReduce?

MapReduce ist ein Software-Framework, mit dem Schreibanwendungen gleichzeitig große Datenmengen auf großen Clustern von Standardhardware verarbeiten können. Dieses Framework besteht aus einem einzigen Master-Job-Tracker und einem Slave-Task-Tracker pro Cluster-Knoten. Der Master führt die Ressourcenverwaltung durch, plant die Jobs auf den Slaves ein, überwacht die fehlgeschlagenen Aufgaben und führt sie erneut aus. Auf der anderen Seite führt der Slave-Task-Tracker die vom Master angewiesenen Aufgaben aus und sendet die Statusinformationen der Aufgaben ständig an das Mater zurück.

Abbildung 2: MapReduce-Übersicht

Außerdem gibt es zwei Aufgaben, die MapReduce zugeordnet sind. Sie sind die Kartenaufgabe und die Reduzierungsaufgabe. Die Map-Task nimmt Eingabedaten und teilt sie in Tupel von Schlüssel-Wert-Paaren auf, während die Reduce-Task die Ausgabe von einer Map-Task als Eingabe übernimmt und diese Datentupel in kleinere Tupel verbindet. Darüber hinaus wird die Kartenaufgabe vor der Reduzierungsaufgabe ausgeführt.

Unterschied zwischen HDFS und MapReduce

Definition

HDFS ist ein verteiltes Dateisystem, das große Dateien zuverlässig auf Computern in einem großen Cluster speichert. Im Gegensatz dazu ist MapReduce ein Software-Framework für das einfache Schreiben von Anwendungen, die große Datenmengen auf großen Clustern von Standardhardware zuverlässig und fehlertolerant verarbeiten. Diese Definitionen erklären den Hauptunterschied zwischen HDFS und MapReduce.

Hauptfunktionalität

Ein weiterer Unterschied zwischen HDFS und MapReduce besteht darin, dass HDFS einen hochperformanten Zugriff auf Daten über hoch skalierbare Hadoop-Cluster bietet, während MapReduce die Verarbeitung von Big Data durchführt.

Fazit

Kurz gesagt, HDFS und MapReduce sind zwei Module in der Hadoop-Architektur. Der Hauptunterschied zwischen HDFS und MapReduce besteht darin, dass HDFS ein verteiltes Dateisystem ist, das Zugriff auf Anwendungsdaten mit hohem Durchsatz bietet, während MapReduce ein Software-Framework ist, das Big Data in großen Clustern zuverlässig verarbeitet.

Referenz:

1. “HDFS-Architekturhandbuch”, Apache Hadoop, hier verfügbar. 
2. MapReduce-Tutorial, Apache Hadoop, hier verfügbar.
3. “Was ist ein Hadoop Distributed File System (HDFS)? - Definition von WhatIs.com. ”SearchDataManagement, Verfügbar hier.

Bildhöflichkeit:

1. "hdfsarchitecture" Von Magnai17 - Eigene Arbeit (CC BY-SA 4.0) über Commons Wikimedia
2. "Mapreduce Overview" Von Poposhka - SVG-Edit (CC BY-SA 3.0) über Commons Wikimedia