Apache Hive Ultimate Tutorial für Anfänger: Lernen Sie Hive von Grund auf neu
Veröffentlicht: 2020-03-20Apache Hive ist ein Open-Source-Data-Warehouse-System, das auf Hadoop aufbaut. Es wird zum Abfragen und Analysieren großer Datensätze verwendet, die in Hadoop-Dateien gespeichert sind. Dieses Tutorial zu Apache Hive hilft Ihnen, die Grundlagen, Eigenschaften und Verwendung zu verstehen.
Im digitalen Zeitalter werden täglich etwa 2,5 Quintillionen Bytes an Daten generiert. Wir brauchen innovative Technologien, um diese Datenexplosion einzudämmen. Und Hive ist ein solches Tool, das strukturierte und halbstrukturierte Daten im branchenführenden Hadoop-Ökosystem verarbeitet. Da immer mehr Arbeitgeber versuchen, die Möglichkeiten von Big Data zu nutzen, suchen sie nach Mitarbeitern, die sich mit Hadoop-Tools auskennen. Daher ist ein Hadoop Hive-Tutorial ein wesentlicher Bestandteil jedes Big-Data-Kurses für Anfänger.
Inhaltsverzeichnis
Was ist Hive? Erklären Sie in einfachen Worten.
Mit Apache Hive können Entwickler Daten zusammenfassen, Abfragen ausführen und große Datensätze analysieren. Es baut auf dem Hadoop Distributed File System (HDFS) auf und bringt mehr Struktur in die Daten, indem es sie in Tabellen organisiert. Außerdem verwendet Hive seine HiveQL- oder HQL-Sprache, um SQL-ähnliche Abfragen für die Daten durchzuführen.
Während SQL auf herkömmlichen Datenbanken ausgeführt wird, kann HQL die Abfragen automatisch in MapReduce-Jobs übersetzen. Hive abstrahiert die Komplexität von Hadoop, indem es SQL-Abfragen in eine Reihe von Jobs umwandelt, die auf dem Hadoop-Cluster ausgeführt werden. Um Apache Hive zu beherrschen, benötigen Sie also eine grundlegende Vertrautheit mit SQL. Aber es ist nicht nötig, Java zu lernen.
Lassen Sie uns in unserem Apache Hive-Tutorial fortfahren und seine Verwendung in modernen Arbeitsplatzumgebungen besprechen.
Warum müssen Sie Hive verwenden?
Herkömmliche Datenbanksysteme sind nicht dafür gerüstet, die großen Datenmengen zu verarbeiten, die heute von Big-Data-Anwendungen generiert werden. Und Hadoop ist ein Framework, das dieses Problem löst. Verschiedene Tools unterstützen die Hadoop-Module, darunter auch Hive. Mit Apache Hive können Sie die folgenden Aufgaben ausführen:

- Tabellen können portioniert und in Buckets unterteilt werden, sodass Daten verarbeitet werden können, die im Hadoop Distributed File System (HDFS) gespeichert sind. Tabellen werden direkt in HDFS definiert
- JDBC/ODBC-Treiber sind für die Integration mit herkömmlichen Technologien verfügbar
- Bietet Schemaflexibilität und -entwicklung zusammen mit der Datenzusammenfassung, was einfachere Analysen ermöglicht
- Erspart Ihnen das Schreiben komplexer Hadoop MapReduce-Jobs
- Das Partitions- und Bucket-Konzept ermöglicht einen schnellen Datenabruf
- Sehr einfach zu erlernen und zu implementieren für SQL-Entwickler
- Schnelles und skalierbares System
- Hive unterstützt verschiedene Arten von Dateien, z. B. Textdatei, Sequenzdatei, RC-Datei, ORF-Datei, Parquet-Datei und AVRO-Datei
Was sind die Hauptkomponenten der Hive-Architektur?
1. Benutzeroberfläche: Ermöglicht es Ihnen, eine Anfrage zu stellen, Anweisungen zu bearbeiten und zu verwalten. Die Befehlszeilenschnittstelle (CLI) und die Web-Benutzeroberfläche ermöglichen es externen Benutzern, sich mit Hive zu verbinden.
2. Metastore: Wie der Name schon sagt, enthält der Metastore die Metadaten der Datenbank. Es enthält Informationen über das Schema und die Position von Tabellen. Es speichert auch die Metadaten der Partition. Es ist in der traditionellen relationalen Datenbank vorhanden und ermöglicht es Ihnen, die verteilten Daten im Cluster zu überwachen. Es verfolgt die Daten, repliziert sie und bietet Backups.
3. Treiber: Dies ist der Teil der Prozess-Engine, der HiveQL-Anweisungen empfängt. Der Treiber erstellt Sitzungen, um die Anweisung auszuführen, und überwacht ihren Lebenszyklus. Es speichert auch die während der Ausführung der Anweisung generierten Metadaten.

4. Compiler: Dieser Teil der HiveQL-Prozess-Engine konvertiert die Abfrage in MapReduce-Eingaben wie Abstract Syntax Tree (AST) und Directed Acyclic Graph (DAG).
5. Optimizer: Diese Komponente der Hive-Architektur führt Transformationen im Ausführungsplan durch, um einen optimierten DAG bereitzustellen. Es teilt die Aufgaben für eine bessere Leistung auf.
6. Ausführender: Er plant oder leitet die Aufgaben weiter, um den Ausführungsprozess abzuschließen. Dazu interagiert es mit dem Hadoop-Job-Tracker.
Lesen Sie: Hadoop-Tutorial für Anfänger
Dieses Apache Hive-Lernprogramm kann nicht vollständig sein, ohne zu erörtern, wie diese Hive-Komponenten miteinander interagieren, um Abfragen auszuführen. Daher haben wir die folgenden Schritte aufgelistet.
Schritt 1: Der Benutzer gibt eine Abfrage in die CLI oder Web-UI ein, die die Abfrage an den Treiber weiterleitet.
Schritt 2: Der Treiber übergibt die Anfrage an den Compiler zur Überprüfung. Der Compiler stellt die Genauigkeit der Syntax sicher.
Schritt 3: Der Compiler fordert den Metastore nach den erforderlichen Metadaten an, um fortzufahren.
Schritt 4: Nach Erhalt der Metadaten sendet der Compiler den Ausführungsplan erneut an den Treiber.
Schritt 5: Der Fahrer leitet diesen Plan an die Ausführungsmaschine weiter.
Schritt 6: Die Ausführungsmaschine führt die letzten Schritte aus. Es sendet die Aufgabe an den JobTracker (Namensknoten) innerhalb des MapReduce-Moduls von Hadoop.
Schritt 7: Der JobTracker weist die Aufgabe weiter dem TaskTracker (Datenknoten) zu.
Schritt 8: Die Abfrage wird ausgeführt und an den Ausführenden zurückgesendet.
Schritt 9: Der Ausführende sendet die Ergebnisse an den Fahrer.
Schritt 10: Der Treiber leitet Ergebnisse an die Benutzeroberfläche von Hive weiter.

Lesen Sie: Hadoop-Entwicklergehalt in Indien
Was wissen Sie über Hive Shell?
Mit Hive Shell können Benutzer HQL-Abfragen ausführen. Es ist die Befehlszeilenschnittstelle von Hive. Sie können Hive Shell in zwei Modi ausführen:
- Nicht interaktiv: Geben Sie den Speicherort der Datei mit den HQL-Abfragen mit der Option -f an. Beispiel: hive -f my-script.q
- Interaktiv: Gehen Sie direkt zur Hive-Shell und senden Sie Abfragen manuell, um das Ergebnis zu erhalten. Beispiel: $bin/hive, gehen Sie zur Hive-Shell
Nennen Sie einige Einschränkungen von Hive
- Es bietet eingeschränkte Unterstützung für Unterabfragen
- Hive-Abfragen haben eine hohe Latenz
- Materialisierte Ansichten sind in Apache Hive nicht zulässig
- Es bietet keine Echtzeitabfragen, Aktualisierungen auf Zeilenebene, Aktualisierungs- und Löschvorgänge
- Apache Hive ist nicht für den Online-Übergangsprozess oder OLTP geeignet
Zusammenfassen
In diesem Hadoop Hive-Tutorial haben wir verschiedene Aspekte von Hive, seiner Verwendung und Architektur behandelt. Wir haben uns auch mit seiner Funktionsweise befasst und seine Grenzen diskutiert. All diese Informationen helfen Ihnen, Ihre Hive-Lernreise zu beginnen. Schließlich ist es eines der am weitesten verbreiteten und vertrauenswürdigsten Big-Data-Frameworks!
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.