Maîtrise de Hive dans le Déplacement dans le Temps

HadoopHadoopBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans l'immensité du continuum temps-espace, une force mystérieuse est apparue, possédant le pouvoir de manipuler la trame même du temps. Une figure malveillante, connue seulement sous le nom de Manipulateur du Temps, a fixé ses yeux sur le dérèglement de l'équilibre délicat de l'univers. Votre mission, si vous choisissez de l'accepter, est de naviguer à travers un labyrinthe de défis chronologiques et de maîtriser l'art des requêtes Hadoop Hive, débloquant les secrets qui vous aideront à contrer les plans sinistres du Manipulateur du Temps.

Le Manipulateur du Temps a dispersé des fragments de données temporelles dans diverses dimensions, et il vous incombe d'utiliser le pouvoir de Hadoop Hive pour collecter, analyser et interpréter ces informations dispersées. Seul en maîtrisant les subtilités des requêtes HiveQL pouvez-vous dévoiler les mystères cachés dans les données et rétablir l'ordre dans le continuum temps-espace.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hadoop(("Hadoop")) -.-> hadoop/HadoopHiveGroup(["Hadoop Hive"]) hadoop/HadoopHiveGroup -.-> hadoop/hive_setup("Hive Setup") hadoop/HadoopHiveGroup -.-> hadoop/hive_shell("Hive Shell") 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/basic_hiveql("Basic HiveQL Queries") hadoop/HadoopHiveGroup -.-> hadoop/limit("limit Usage") hadoop/HadoopHiveGroup -.-> hadoop/group_by("group by Usage") subgraph Lab Skills hadoop/hive_setup -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/hive_shell -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/manage_db -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/create_tables -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/load_insert_data -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/basic_hiveql -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/limit -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} hadoop/group_by -.-> lab-288958{{"Maîtrise de Hive dans le Déplacement dans le Temps"}} end

Configuration de l'environnement

Dans cette étape, vous allez préparer votre environnement pour les défis à venir en configurant un cluster Hadoop et en configurant le magasin de métadonnées Hive.

  1. Ouvrez un terminal et basculez sur l'utilisateur hadoop en exécutant la commande suivante :
su - hadoop
  1. Accédez au répertoire /home/hadoop :
cd /home/hadoop
  1. Créez un nouveau répertoire appelé hive_lab :
mkdir hive_lab
  1. Accédez au répertoire hive_lab :
cd hive_lab
  1. Exécutez la commande suivante pour démarrer le magasin de métadonnées Hive :
hive --service metastore

Cette commande démarrera le service du magasin de métadonnées Hive, qui est essentiel pour gérer les métadonnées des bases de données Hive, des tables et des partitions.

Création d'une base de données Hive et d'une table

Dans cette étape, vous allez créer une base de données Hive et une table pour stocker les fragments de données temporelles.

  1. Ouvrez une nouvelle fenêtre de terminal et basculez sur l'utilisateur hadoop :
su - hadoop
  1. Démarrez le shell Hive :
hive
  1. Dans le shell Hive, créez une nouvelle base de données appelée time_fragments :
CREATE DATABASE time_fragments;
  1. Basculez sur la base de données time_fragments :
USE time_fragments;
  1. Créez une table appelée event_logs avec le schéma suivant :
CREATE TABLE event_logs (
  event_id INT,
  event_name STRING,
  event_timestamp TIMESTAMP,
  event_location STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;

Cette table stockera les fragments de données temporelles, y compris un identifiant d'événement, un nom d'événement, une horodate et un emplacement.

  1. Sortez du shell Hive :
EXIT;

Chargement de données dans la table Hive

Dans cette étape, vous allez charger les fragments de données temporelles dans la table event_logs que vous avez créée dans l'étape précédente.

  1. Créez un nouveau fichier appelé event_data.csv dans le répertoire hive_lab :
nano event_data.csv
  1. Copiez et collez les données suivantes dans le fichier event_data.csv :
1,Time Warp,2023-05-01 10:00:00,New York
2,Chrono Shift,2023-05-02 14:30:00,Tokyo
3,Temporal Distortion,2023-05-03 08:15:00,London
4,Paradox Pulse,2023-05-04 19:45:00,Sydney
5,Quantum Leap,2023-05-05 06:00:00,Moscow
  1. Enregistrez le fichier et quittez l'éditeur de texte.

  2. Chargez les données à partir du fichier event_data.csv dans la table event_logs en utilisant la commande suivante :

hive -e "LOAD DATA LOCAL INPATH '/home/hadoop/hive_lab/event_data.csv' OVERWRITE INTO TABLE time_fragments.event_logs;"

Cette commande chargera les données à partir du fichier local event_data.csv dans la table event_logs de la base de données time_fragments.

Interrogation de la table Hive

Dans cette étape, vous allez pratiquer l'écriture de requêtes HiveQL pour analyser les fragments de données temporelles stockés dans la table event_logs.

  1. Démarrez le shell Hive :
hive
  1. Basculez sur la base de données time_fragments :
USE time_fragments;
  1. Écrivez une requête pour sélectionner toutes les colonnes de la table event_logs :
SELECT * FROM event_logs;

Cette requête affichera toutes les lignes et colonnes de la table event_logs.

  1. Écrivez une requête pour compter le nombre d'événements survenus dans chaque emplacement :
CREATE TABLE result_1
AS
SELECT event_location, COUNT(*) AS event_count
FROM event_logs
GROUP BY event_location;

SELECT * FROM result_1;

Cette requête regroupera les événements par emplacement et comptera le nombre d'événements pour chaque emplacement.

  1. Écrivez une requête pour trouver l'événement ayant la plus ancienne horodate :
CREATE TABLE result_2
AS
SELECT * FROM event_logs
ORDER BY event_timestamp ASC
LIMIT 1;

SELECT * FROM result_2;

Cette requête triera les événements par la colonne event_timestamp dans l'ordre croissant et retournera la première ligne, qui correspond à l'événement ayant la plus ancienne horodate.

  1. Sortez du shell Hive :
EXIT;

Sommaire

Dans ce laboratoire, vous avez entrepris une mission passionnante pour dévoiler les mystères du continuum temps - espace et contrer les plans malveillants du Manipulateur du Temps. Par une série d'étapes pratiques, vous avez configuré un environnement Hadoop, créé une base de données Hive et une table, chargé des fragments de données temporelles et maîtrisé l'art d'écrire des requêtes HiveQL pour analyser et interpréter les données.

En terminant avec succès ce laboratoire, vous avez acquis une expérience précieuse dans le travail avec Hadoop Hive, une solution de stockage de données puissante qui permet un stockage, une récupération et une analyse de données efficaces. Vous avez appris à créer des bases de données et des tables, à charger des données dans des tables Hive et à interroger les données à l'aide de diverses commandes HiveQL telles que SELECT, GROUP BY et ORDER BY.

Vos nouvelles compétences en Hadoop Hive seront utiles pour dévoiler les mystères du continuum temps - espace et finalement mettre fin aux plans perfides du Manipulateur du Temps. Félicitations pour vos réalisations, et que votre parcours dans le labyrinthe des défis chronologiques continue avec encore plus de succès!