Unified Data Quest Hadoop Integration

HadoopHadoopBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In der mystischen Welt von Datagonia begab sich ein tapferer Datenritter namens Lionheart auf eine außergewöhnliche Reise. Das Wohlergehen des Königreichs hing davon ab, die Macht der Daten zu nutzen, und Lionhearts Aufgabe war es, die verschiedenen Datensätze, die über das Land verstreut lagen, zu vereinigen. Mit seinen vertrauenswürdigen Hadoop-Tools an seiner Seite machte er sich auf den Weg, um die vor ihm liegenden Herausforderungen zu meistern.

Die weiten Felder des Königreichs enthielten wertvolle Informationen über die Ernteerträge, die Bodenverhältnisse und die Wetterbedingungen. In den Minen warteten Daten über Mineralvorkommen und Extraktionsraten auf die Integration. Die belebten Städte wimmelten von Aufzeichnungen über Handel, Wirtschaft und Bevölkerungsdynamik. Lionhearts Ziel war es, diese unterschiedlichen Datenquellen zu einer einheitlichen, umfassenden Datensammlung zu kombinieren, die die Entscheidungsträger des Königreichs stärken und den Fortschritt antreiben würde.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hadoop(("Hadoop")) -.-> hadoop/HadoopHDFSGroup(["Hadoop HDFS"]) hadoop(("Hadoop")) -.-> hadoop/HadoopHiveGroup(["Hadoop Hive"]) hadoop/HadoopHDFSGroup -.-> hadoop/fs_mkdir("FS Shell mkdir") hadoop/HadoopHiveGroup -.-> hadoop/manage_db("Managing Database") hadoop/HadoopHiveGroup -.-> hadoop/create_tables("Creating Tables") hadoop/HadoopHiveGroup -.-> hadoop/load_insert_data("Loading and Inserting Data") hadoop/HadoopHiveGroup -.-> hadoop/import_export_data("Importing and Exporting Data") hadoop/HadoopHiveGroup -.-> hadoop/basic_hiveql("Basic HiveQL Queries") hadoop/HadoopHiveGroup -.-> hadoop/where("where Usage") hadoop/HadoopHiveGroup -.-> hadoop/group_by("group by Usage") hadoop/HadoopHiveGroup -.-> hadoop/union("union Usage") subgraph Lab Skills hadoop/fs_mkdir -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/manage_db -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/create_tables -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/load_insert_data -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/import_export_data -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/basic_hiveql -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/where -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/group_by -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} hadoop/union -.-> lab-289004{{"Unified Data Quest Hadoop Integration"}} end

Beispiel-Daten erstellen

In diesem Schritt werden wir einige Beispiel-Daten-Dateien erstellen, um die Macht des UNION-Operators in Hive zu erkunden.

Stellen Sie zunächst sicher, dass Sie als Benutzer hadoop angemeldet sind, indem Sie den folgenden Befehl in der Konsole ausführen:

su - hadoop

Navigieren Sie dann zum Verzeichnis /home/hadoop/data und erstellen Sie ein neues Verzeichnis namens crops:

mkdir -p /home/hadoop/data/crops

Erstellen Sie anschließend in das Verzeichnis crops zwei Dateien namens wheat.csv und corn.csv mit den folgenden Inhalten:

wheat.csv:

North,2020,50
South,2020,45
East,2020,48
West,2020,42

corn.csv:

North,2020,50
South,2020,58
East,2020,62
West,2020,55

Sie können jede beliebige Texteditor verwenden, um diese Dateien zu erstellen.

Daten in Hive-Tabellen laden

In diesem Schritt werden wir Hive-Tabellen erstellen und die Beispiel-Daten in diese laden.

Stellen Sie zunächst die Hive-Befehlszeilenschnittstelle (CLI) durch Ausführen des folgenden Befehls in der Konsole starten:

hive

Sobald Sie in der Hive-CLI sind, erstellen Sie eine Datenbank namens agriculture:

CREATE DATABASE agriculture;

Wechseln Sie anschließend zur Datenbank agriculture:

USE agriculture;

Erstellen Sie eine Tabelle namens wheat mit dem passenden Schema:

CREATE TABLE wheat (
  region STRING,
  year INT,
  yield INT
) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

Laden Sie die Daten aus der Datei wheat.csv in die Tabelle wheat:

LOAD DATA LOCAL INPATH '/home/hadoop/data/crops/wheat.csv' OVERWRITE INTO TABLE wheat;

Wiederholen Sie den Vorgang für die Tabelle corn:

CREATE TABLE corn (
  region STRING,
  year INT,
  yield INT
) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

LOAD DATA LOCAL INPATH '/home/hadoop/data/crops/corn.csv' OVERWRITE INTO TABLE corn;

Sie können die Daten in den Tabellen mithilfe des SELECT-Statements überprüfen:

SELECT * FROM wheat;
SELECT * FROM corn;

UNION-Operation durchführen

Jetzt, nachdem wir unsere Daten in Hive-Tabellen geladen haben, können wir den UNION-Operator verwenden, um die Ergebnisse von zwei oder mehr Abfragen zu kombinieren.

Führen Sie in der Hive-CLI die folgende Abfrage aus:

CREATE TABLE result_1
AS
SELECT region, year, yield FROM wheat
UNION
SELECT region, year, yield FROM corn;

SELECT * FROM result_1;

Diese Abfrage kombiniert die Ergebnisse aus den Tabellen wheat und corn und erstellt effektiv einen einheitlichen Datensatz mit allen Regionen, Jahren und Erträgen.

Sie können auch UNION ALL ausführen, was doppelte Zeilen im Ergebnissatz einschließt:

SELECT region, year, yield FROM wheat
UNION ALL
SELECT region, year, yield FROM corn;

Beachten Sie, dass die Spaltennamen und Datentypen in allen Abfragen, die im UNION- oder UNION ALL-Operator verwendet werden, übereinstimmen müssen.

Fortgeschrittene UNION-Operationen (Optional)

Sie können den UNION-Operator weiter erkunden, indem Sie komplexere Abfragen kombinieren oder ihn mit anderen Hive-Konstrukten wie Filterung oder Aggregation verwenden.

Zum Beispiel können Sie die Ergebnisse einer GROUP BY-Abfrage mit einer anderen Abfrage kombinieren:

CREATE TABLE result_2
AS
SELECT region, SUM(yield) AS total_yield FROM wheat GROUP BY region
UNION
SELECT region, yield FROM corn;

SELECT * FROM result_2;

Oder Sie können die Ergebnisse filtern, bevor Sie sie kombinieren:

SELECT region, year, yield FROM wheat WHERE year = 2020
UNION
SELECT region, year, yield FROM corn WHERE year = 2020 AND yield > 60;

Experimentieren Sie gerne mit verschiedenen Kombinationen und sehen Sie, wie der UNION-Operator Ihnen helfen kann, Daten aus mehreren Quellen zu konsolidieren.

Zusammenfassung

In diesem Lab haben wir die Verwendung des UNION-Operators in Apache Hive untersucht, einem leistungsstarken Tool für das Data Warehousing und die Analyse im Hadoop-Ekosystem. Indem wir Beispiel-Datensätze erstellt und in Hive-Tabellen geladen haben, haben wir gelernt, wie wir die Ergebnisse mehrerer Abfragen mit UNION und UNION ALL kombinieren können. Diese leistungsstarke Funktion ermöglicht es uns, Daten aus verschiedenen Quellen zu konsolidieren, was eine umfassende Analyse und informierte Entscheidungen ermöglicht.

Auf der Reise des Lionheart, des Datenritter, haben wir die transformierende Kraft der Datenintegration miterlebt. Indem Lionheart verschiedene Datensätze aus den Feldern, Bergwerken und Städten des Königreichs vereinigte, gab er den Entscheidern einen umfassenden Überblick, was den Weg für Fortschritt und Wohlstand in der Welt von Datagonia ebnete.

Dieses Lab hat nicht nur praktische Erfahrungen mit Hive und dem UNION-Operator vermittelt, sondern auch die Wichtigkeit der Datenkonsolidierung bei der Entschlüsselung von Erkenntnissen und der Förderung von Innovation verdeutlicht. Indem wir diese Techniken beherrschen, können wir selbst zu Datenrittern werden, ausgestattet mit den Werkzeugen, um komplexe Datenherausforderungen zu meistern und eine hellerere Zukunft zu gestalten.