Einführung
In einer zukunftsträchtigen Welt, in der Daten alles beherrschen, findet ein großartiger Wettkampf statt, um den ultimaten Meister der Datenmanipulation zu bestimmen. Teilnehmer aus allen Ecken der Galaxis versammeln sich, um ihre Fähigkeiten in der Kunst des Datenmanagements zu demonstrieren. Die größte Herausforderung liegt dabei im Bereich des Hadoop Hive Shells.
Du, ein vielversprechender Dateningenieur, wurdest ausgewählt, um deine Heimatwelt in diesem renommierten Event zu vertreten. Als du in die Arena trittst, begrüßt dich die beeindruckende Gestalt des Chefredakteurs des Wettkampfs: "Willkommen, Herausforderer! In diesem entscheidenden Kampf musst du die Tiefen des Hive Shells erobern, ein leistungsstarkes Tool, das es dir ermöglicht, mit Hadoops Datenlagerungssystem zu interagieren. Beweise deine Tapferkeit, indem du eine Reihe von Aufgaben ausführst, die dein Können in der Datenabfrage, -manipulation und -analyse testen."
Mit einem entschlossenen Nicken bereitest du dich auf die bevorstehenden Herausforderungen vor und bist eifrig darauf, deine Fähigkeiten zu demonstrieren und Ehre deiner Welt zu bringen.
Zugang zum Hive Shell
In diesem Schritt lernst du, wie du den Hive Shell, eine Befehlszeilen-Schnittstelle, die es dir ermöglicht, mit dem Hive-Datenlagerungssystem zu interagieren, zugreifen kannst.
Um auf den Hive Shell zuzugreifen, folge diesen Schritten:
- Öffne ein Terminalfenster.
- Wechsle zum Benutzer
hadoop, indem du folgenden Befehl ausführst:
su - hadoop
- Wenn du in der Umgebung des Benutzers
hadoopbist, starte den Hive Shell, indem du folgenden Befehl ausführst:
hive
Du solltest den Hive Shell-Prompt (hive>) sehen, was darauf hindeutet, dass du erfolgreich den Hive Shell betreten hast.
Hier ist ein Beispiel dafür, was du in deinem Terminal sehen solltest:
[hadoop@localhost ~]$ hive
Hive Session ID = 2bd4d0ce-9a9a-4c4e-a8f4-c5a6c7b9a8b9
Logging initialized using configuration in file:/etc/hive/conf.dist/hive-log4j2.properties Async: true
Hive Session Value Manager Service
hive>
Jetzt bist du bereit, Hive-Abfragen und -Befehle im Hive Shell auszuführen.
Erstellen einer Datenbank und einer Tabelle
In diesem Schritt lernst du, wie du eine neue Datenbank und Tabelle im Hive Shell erstellst.
- Erstelle zunächst eine neue Datenbank namens
tournament_db, indem du folgenden Befehl im Hive Shell ausführst:
CREATE DATABASE tournament_db;
- Wechsle anschließend zur neu erstellten Datenbank:
USE tournament_db;
- Erstelle eine neue Tabelle namens
contestantsmit dem folgenden Schema:
CREATE TABLE contestants (
id INT,
name STRING,
planet STRING,
score INT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';
Diese Tabelle wird Informationen über die Wettkampfteilnehmer speichern, einschließlich ihrer ID, ihres Namens, ihrer Heimatwelt und ihres Punktestands.
- Um zu überprüfen, dass die Tabelle erfolgreich erstellt wurde, kannst du folgenden Befehl ausführen, um das Tabellenschema anzuzeigen:
DESCRIBE contestants;
Du solltest das Tabellenschema in der Ausgabe des Hive Shells sehen.
Hier ist ein Beispiel dafür, was du sehen solltest:
hive> DESCRIBE contestants;
OK
id int None
name string None
planet string None
score int None
Laden von Daten in die Tabelle
Jetzt, nachdem du die Tabelle contestants erstellt hast, ist es an der Zeit, sie mit Daten zu füllen.
- Erstelle in das Verzeichnis
/home/hadoop/eine neue Datei namenscontestants.csvmit dem folgenden Inhalt:
1,Zara,Andromeda,85
2,Brock,Celestia,92
3,Kira,Nebula,78
4,Tara,Vega,96
5,Zion,Altair,83
- Wechsle anschließend zur neu erstellten Datenbank:
USE tournament_db;
- Lade die Daten aus der Datei
contestants.csvin die Tabellecontestantsmit dem folgenden Befehl im Hive Shell:
LOAD DATA LOCAL INPATH '/home/hadoop/contestants.csv' OVERWRITE INTO TABLE contestants;
Dieser Befehl lädt die Daten aus der lokalen Datei contestants.csv in die Tabelle contestants und überschreibt dabei alle vorhandenen Daten.
- Um zu überprüfen, dass die Daten korrekt geladen wurden, kannst du eine
SELECT-Abfrage ausführen:
SELECT * FROM contestants;
Du solltest die folgende Ausgabe sehen:
hive> SELECT * FROM contestants;
OK
1 Zara Andromeda 85
2 Brock Celestia 92
3 Kira Nebula 78
4 Tara Vega 96
5 Zion Altair 83
Abfragen der Daten
Nachdem die Daten in die Tabelle contestants geladen wurden, kannst du nun verschiedene Abfragen ausführen, um die Daten zu analysieren und zu manipulieren.
- Um die Namen und Punkte aller Teilnehmer aus der Welt 'Andromeda' anzuzeigen, führe die folgende Abfrage aus:
SELECT name, score FROM contestants WHERE planet = 'Andromeda';
Du solltest die folgende Ausgabe sehen:
hive> SELECT name, score FROM contestants WHERE planet = 'Andromeda';
OK
Zara 85
- Um den Durchschnittspunkt aller Teilnehmer zu berechnen, führe die folgende Abfrage aus:
SELECT AVG(score) AS average_score FROM contestants;
Du solltest die folgende Ausgabe sehen:
hive> SELECT AVG(score) AS average_score FROM contestants;
OK
86.8
- Um den Teilnehmer mit der höchsten Punktzahl zu finden, führe die folgende Abfrage aus:
SELECT name, MAX(score) AS highest_score FROM contestants GROUP BY name;
Du solltest die folgende Ausgabe sehen:
hive> SELECT name, MAX(score) AS highest_score FROM contestants GROUP BY name;
OK
Brock 92
Kira 78
Tara 96
Zara 85
Zion 83
Fühl dich frei, mit weiteren Abfragen zu experimentieren und die Daten in der Tabelle contestants mithilfe der verschiedenen Klauseln und Funktionen von Hive zu erkunden.
Zusammenfassung
In diesem Lab hast du eine Reise in die Welt des Hadoop Hive Shells begonnen, eines leistungsstarken Tools zur Datenmanipulation und -analyse. Durch eine Reihe von immersiven Herausforderungen hast du die Kunst des Zugangs zum Hive Shells, des Erstellens von Datenbanken und Tabellen, des Ladens von Daten und des Abfragens der Daten mithilfe verschiedener Klauseln und Funktionen beherrscht.
Das Design des Labs, inspiriert von einem zukunftsträchtigen Wettkampf, zielte darauf ab, eine ansprechende und motivierende Lernumgebung zu schaffen. Indem du die Rolle eines Teilnehmers repräsentierend deine Heimatwelt angenommen hast, wurdest du motiviert, in jeder Herausforderung zu brillieren, deine Fähigkeiten zu schärfen und deine Fähigkeiten bei der Datenaufbereitung zu demonstrieren.
Während des gesamten Labs hast du praktische Aufgaben angetroffen, bei denen du Befehle ausführen, Abfragen schreiben und die Ergebnisse analysieren musstest. Die schrittweisen Anweisungen, begleitet von Codebeispielen und detaillierten Erklärungen, gewährleisteten eine flache Lernkurve und ermöglichten es dir, schrittweise dein Wissen und dein Vertrauen aufzubauen.
Die Einbindung von Prüfsripts am Ende jedes Schritts bot eine Möglichkeit zur Selbstbewertung, sodass du deine Verständnis validieren und sicher stellen konnten, dass du die Aufgaben erfolgreich abgeschlossen hattest. Diese Prüfsysteme spielten eine entscheidende Rolle bei der Verstärkung deines Lernprozesses und der Gewährleistung, dass du auf dem richtigen Weg bist.
Insgesamt hat dieses Lab dich nicht nur mit den erforderlichen Grundkenntnissen ausgestattet, um mit Hadoop Hive Shell umzugehen, sondern hat auch ein Verständnis für die Macht der Datenmanipulation und -analyse auf eine ansprechende und immersive Weise vermittelt.



