Hadoop-Ökosystem und -Komponenten: Umfassendes Tutorial 2022
Veröffentlicht: 2021-01-04Hadoop ist ein Open-Source-Framework, das für Big-Data-Prozesse verwendet wird. Es ist riesig und hat viele Komponenten. Jede dieser Komponenten führt einen bestimmten Satz von Big-Data-Jobs aus. Hadoops umfangreiche Sammlung von Lösungen hat es zu einem festen Bestandteil der Branche gemacht. Und wer Big-Data-Experte werden will, muss sich mit all seinen Komponenten vertraut machen.
Machen Sie sich jedoch keine Sorgen, denn in diesem Artikel werfen wir einen Blick auf all diese Komponenten:
Inhaltsverzeichnis
Was sind die Hadoop-Kernkomponenten?
Hadoop-Kernkomponenten bestimmen seine Leistung und Sie müssen sich mit ihnen vertraut machen, bevor Sie andere Bereiche seines Ökosystems verwenden. Das Ökosystem von Hadoop ist riesig und mit vielen Tools gefüllt. Ein anderer Name für seine Kernkomponenten ist Module. Es gibt in erster Linie folgende
Hadoop-Kernkomponenten:
1. HDFS
Die vollständige Form von HDFS ist das Hadoop Distributed File System. Es ist die wichtigste Komponente von Hadoop, wenn es um die Datenspeicherung geht. Mit HDFS können Sie Daten in einem Netzwerk verteilter Speichergeräte speichern. Es verfügt über eine Reihe von Tools, mit denen Sie diese gespeicherten Daten lesen und entsprechend analysieren können. HDFS ermöglicht Ihnen die Erfassung Ihrer Daten unabhängig vom Betriebssystem Ihres Computers. Lesen Sie mehr über HDFS und seine Architektur.
Da Sie sich keine Gedanken über das Betriebssystem machen müssen, können Sie mit höherer Produktivität arbeiten, da Sie Ihr System nicht jedes Mal modifizieren müssen, wenn Sie auf ein neues Betriebssystem stoßen. HDFS besteht aus folgenden Komponenten:

- NameNode
- Datenknoten
- Sekundärer NameNode
Name Node wird in HDFS auch „Master“ genannt. Es speichert die Metadaten der Slave-Knoten, um die Datenspeicherung zu verfolgen. Es sagt Ihnen, was wo gespeichert ist. Der Master-Knoten überwacht auch den Zustand der Slave-Knoten. Es kann auch Datenknoten Aufgaben zuweisen. Datenknoten speichern die Daten. Datenknoten werden in HDFS auch als „Slave“ bezeichnet.
Slave-Knoten antworten auf die Anfrage des Master-Knotens nach dem Gesundheitszustand und informieren ihn über ihre Situation. Falls ein Slave-Knoten nicht auf die Gesundheitszustandsanfrage des Master-Knotens antwortet, meldet der Master-Knoten ihn als tot und weist seine Aufgabe einem anderen Datenknoten zu.
Neben dem Namensknoten und den Slave-Knoten gibt es noch einen dritten, den sekundären Namensknoten. Es ist ein Puffer für den Master-Knoten. Es aktualisiert die Daten im FinalFS-Image, wenn der Master-Knoten nicht aktiv ist.
2. MapReduce
MapReduce ist die zweite Kernkomponente von Hadoop und kann zwei Aufgaben ausführen, Map und Reduce. Mapreduce ist eines der besten Hadoop-Tools, das Ihre Big-Data-Reise vereinfachen kann. Mapping bezieht sich auf das Lesen der in einer Datenbank vorhandenen Daten und deren Übertragung in ein zugänglicheres und funktionaleres Format. Das Mapping ermöglicht es dem System, die Daten zur Analyse zu verwenden, indem es ihre Form ändert. Dann kommt die Reduktion, die eine mathematische Funktion ist. Es reduziert die gemappten Daten auf einen Satz definierter Daten für eine bessere Analyse.
Es parst die Schlüssel-Wert-Paare und reduziert sie für die Funktionalität auf Tupel. MapReduce hilft bei vielen Aufgaben in Hadoop, wie dem Sortieren der Daten und dem Filtern der Daten. Seine beiden Komponenten arbeiten zusammen und helfen bei der Datenaufbereitung. MapReduce übernimmt auch die Überwachung und Planung von Jobs.
Es fungiert als Computerknoten des Hadoop-Ökosystems. MapReduce kümmert sich hauptsächlich darum, eine große Datenaufgabe in eine Gruppe kleiner Aufgaben zu zerlegen. Sie können MapReduce-Jobs effizient ausführen, da Sie eine Vielzahl von Programmiersprachen damit verwenden können. Es erlaubt Ihnen, Python, C++ und sogar Java zum Schreiben seiner Anwendungen zu verwenden. Es ist schnell und skalierbar, weshalb es eine wichtige Komponente des Hadoop-Ökosystems ist.
3. GARN
YARN steht für Yet Another Resource Negotiator. Es übernimmt die Ressourcenverwaltung in Hadoop. Auch das Ressourcenmanagement ist eine entscheidende Aufgabe. Aus diesem Grund ist YARN eine der wesentlichen Hadoop-Komponenten. Es überwacht und verwaltet die Workloads in Hadoop. YARN ist hochgradig skalierbar und agil. Es bietet Ihnen fortschrittliche Lösungen für die Cluster-Nutzung, was ein weiterer wesentlicher Vorteil ist. Erfahren Sie mehr über die Hadoop YARN-Architektur.
YARN besteht aus mehreren Komponenten; Der wichtigste unter ihnen ist der Ressourcenmanager. Der Ressourcenmanager stellt flexible und generische Frameworks bereit, um die Ressourcen in einem Hadoop-Cluster zu handhaben. Ein anderer Name für den Ressourcenmanager ist Master. Der Knotenmanager ist eine weitere wichtige Komponente in YARN.
Es überwacht den Status des App-Managers und des Containers in YARN. Die gesamte Datenverarbeitung findet im Container statt, und der App-Manager verwaltet diesen Prozess, wenn der Container mehr Ressourcen benötigt, um seine Datenverarbeitungsaufgaben auszuführen, fordert der App-Manager dieselben vom Ressourcen-Manager an.
4. Hadoop-Allgemein
Apache hat dem Hadoop-Ökosystem viele Bibliotheken und Dienstprogramme hinzugefügt, die Sie mit seinen verschiedenen Modulen verwenden können. Hadoop Common ermöglicht es einem Computer, dem Hadoop-Netzwerk beizutreten, ohne dass Probleme mit der Kompatibilität des Betriebssystems oder der Hardware auftreten. Diese Komponente verwendet Java-Tools, damit die Plattform ihre Daten im erforderlichen System speichern kann.
Es erhält den Namen Hadoop Common, weil es dem System Standardfunktionalität zur Verfügung stellt.
Hadoop-Komponenten nach Rolle
Nachdem wir uns nun die Hadoop-Kernkomponenten angesehen haben, beginnen wir mit der Diskussion der anderen Teile. Wie bereits erwähnt, verfügt Hadoop über eine riesige Sammlung von Tools, daher haben wir sie nach ihrer Rolle im Hadoop-Ökosystem unterteilt. Lass uns anfangen:

Speicherung von Daten
Tierpfleger
Zookeeper hilft Ihnen bei der Verwaltung der Namenskonventionen, Konfiguration, Synchronisierung und anderer Informationen der Hadoop-Cluster. Es ist der zentralisierte Open-Source-Server des Ökosystems.
HKatalog
HCatalog speichert Daten im Binärformat und übernimmt die Tabellenverwaltung in Hadoop. Es ermöglicht Benutzern, die im HIVE gespeicherten Daten zu verwenden, damit sie Datenverarbeitungstools für ihre Aufgaben verwenden können. Es ermöglicht Ihnen die Authentifizierung auf Basis von Kerberos und hilft bei der Übersetzung und Interpretation der Daten.
HDFS
Wir haben bereits über HDFS gesprochen. HDFS steht für Hadoop Distributed File System und übernimmt die Datenspeicherung in Hadoop. Es unterstützt die horizontale und vertikale Skalierbarkeit. Es ist fehlertolerant und verfügt über einen Replikationsfaktor, der Kopien von Daten aufbewahrt, falls Sie aufgrund eines Fehlers etwas davon verlieren.
Ausführungs-Engine
Funke
Sie würden Spark für die Mikro-Batch-Verarbeitung in Hadoop verwenden. Es kann ETL- und Echtzeit-Datenstreaming durchführen. Es ist sehr agil, da es 80 hochrangige Operatoren unterstützen kann. Es ist ein Cluster-Computing-Framework. Erfahren Sie mehr über Apache Spark-Anwendungen.
Karte verkleinern
Mit diesem sprachunabhängigen Modul können Sie komplexe Daten in nutzbare Daten für die Analyse umwandeln. Es führt ein Mapping durch und reduziert die Daten, sodass Sie eine Vielzahl von Operationen daran ausführen können, einschließlich Sortieren und Filtern derselben. Es ermöglicht Ihnen auch die lokale Verarbeitung von Daten.
Tez
Mit Tez können Sie mehrere MapReduce-Aufgaben gleichzeitig ausführen. Es ist ein Datenverarbeitungs-Framework, das Sie bei der Datenverarbeitung und Stapelverarbeitung unterstützt. Es kann die Neukonfiguration planen und Ihnen dabei helfen, effektive Entscheidungen bezüglich des Datenflusses zu treffen. Es ist perfekt für das Ressourcenmanagement.
Datenbankmanagement
Impala
Sie würden Impala in Hadoop-Clustern verwenden. Es kann sich dem Metastore von Hive anschließen und die erforderlichen Informationen mit ihm teilen. Die SQL-Schnittstelle ist einfach zu erlernen und kann Big Data ohne großen Aufwand abfragen.
Bienenstock
Der Entwickler dieser Hadoop-Komponente ist Facebook. Es verwendet HiveQL, das SQL sehr ähnlich ist und Sie Datenanalyse, Zusammenfassung und Abfragen durchführen lässt. Durch die Indizierung beschleunigt Hive die Datenabfrage.
HBase
HBase verwendet HDFS zum Speichern von Daten. Es ist eine spaltenorientierte Datenbank. Es ermöglicht NoSQL-Datenbanken, riesige Tabellen zu erstellen, die Hunderttausende (oder sogar Millionen) von Spalten und Zeilen enthalten können. Sie sollten HBase verwenden, wenn Sie einen Lese- oder Schreibzugriff auf Datensätze benötigen. Facebook verwendet HBase, um seine Nachrichtenplattform zu betreiben.
Apache-Drill
Mit Apache Drill können Sie mehrere Datensätze kombinieren. Es kann eine Vielzahl von NoSQL-Datenbanken unterstützen, weshalb es sehr nützlich ist. Es hat eine hohe Skalierbarkeit und kann einer Vielzahl von Benutzern problemlos helfen. Damit können Sie alle SQL-ähnlichen Analyseaufgaben problemlos ausführen. Es verfügt auch über Authentifizierungslösungen zur Aufrechterhaltung der End-to-End-Sicherheit in Ihrem System.
Abstraktion
Apache Sqoop
Sie können Apache Sqoop verwenden, um Daten aus externen Quellen in den Datenspeicher von Hadoop wie HDFS oder HBase zu importieren. Sie können damit auch Daten aus dem Datenspeicher von Hadoop in externe Datenspeicher exportieren. Die Fähigkeit von Sqoop, Daten parallel zu übertragen, reduziert eine übermäßige Belastung der Ressourcen und lässt Sie die Daten mit hoher Effizienz importieren oder exportieren. Sie können Sqoop auch zum Kopieren von Daten verwenden.
Apache-Schwein
Apache Pig wurde von Yahoo entwickelt und hilft Ihnen bei der Analyse großer Datenmengen. Es verwendet seine Sprache Pig Latin, um die erforderlichen Aufgaben reibungslos und effizient auszuführen. Sie können die Struktur von Pig-Programmen parallelisieren, wenn Sie mit riesigen Datensätzen umgehen müssen, was Pig zu einer hervorragenden Lösung für die Datenanalyse macht. Nutzen Sie unser Apache-Pig-Tutorial, um mehr zu verstehen.
Daten-Streaming
Gerinne
Mit Flume können Sie riesige Datenmengen sammeln. Es ist eine Datenerfassungslösung, die die gesammelten Daten an HDFS sendet. Es hat drei Abschnitte, die Kanäle, Quellen und schließlich Senken sind. Flume hat Agenten, die den Datenfluss ausführen. Die in diesem Fluss vorhandenen Daten werden als Ereignisse bezeichnet. Twitter verwendet Flume für das Streaming seiner Tweets.

Kafka
Apache Kafka ist eine dauerhafte, schnelle und skalierbare Lösung für verteiltes öffentliches Messaging. LinkedIn steht hinter der Entwicklung dieses leistungsstarken Tools. Es verwaltet große Feeds von Nachrichten innerhalb eines Themas. Viele Unternehmen verwenden Kafka für das Datenstreaming. MailChimp, Airbnb, Spotify und FourSquare sind einige der prominenten Nutzer dieses leistungsstarken Tools.
Erfahren Sie mehr – Hadoop-Komponenten
In diesem Handbuch haben wir versucht, jede Hadoop-Komponente kurz anzusprechen, um Sie gründlich damit vertraut zu machen. Wenn Sie mehr über Hadoop-Komponenten und ihre Architektur erfahren möchten, empfehlen wir Ihnen, unseren Blog zu besuchen, der voller nützlicher Data-Science-Artikel ist.
Wenn Sie mehr über Big Data erfahren möchten, schauen Sie sich unser PG Diploma in Software Development Specialization in Big Data-Programm an, das für Berufstätige konzipiert ist und mehr als 7 Fallstudien und Projekte bietet, 14 Programmiersprachen und Tools abdeckt und praktische praktische Übungen enthält Workshops, mehr als 400 Stunden gründliches Lernen und Unterstützung bei der Stellenvermittlung bei Top-Unternehmen.
Lernen Sie Softwareentwicklungskurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.