Optimisation des ressources spatiales avec Hadoop

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

Bienvenue à la Station de Commerce Intergalactique, un carrefour animé où les marchands et les voyageurs de toute la galaxie convergent pour échanger des biens et des services. En tant que mécanicien expérimenté de la station spatiale, vos compétences sont très recherchées pour maintenir les systèmes de la station en parfait fonctionnement. Aujourd'hui, vous avez été chargé d'analyser et d'optimiser l'allocation des ressources de la station en triant les données selon les modèles d'utilisation.

Votre objectif est de développer une solution basée sur Hadoop qui peut traiter et trier efficacement de grands ensembles de données, en vous assurant que les ressources de la station sont allouées de manière efficiente pour répondre aux exigences en constante évolution de ses nombreux visiteurs.

Configurez l'environnement

Dans cette étape, nous allons configurer l'environnement pour notre projet Hadoop et créer un ensemble de données d'échantillonnage.

  1. Ouvrez un terminal et basculez sur l'utilisateur hadoop en exécutant la commande suivante :
su - hadoop
  1. Créez un nouveau répertoire appelé sorting_lab dans le répertoire /home/hadoop :
mkdir /home/hadoop/sorting_lab
  1. Accédez au répertoire sorting_lab :
cd /home/hadoop/sorting_lab
  1. Créez un ensemble de données d'échantillonnage en exécutant la commande suivante :
echo -e "apple\t5\nbanana\t3\norange\t7\ngrape\t2\nstrawberry\t6" > fruit_sales.txt

Cette commande crée un fichier nommé fruit_sales.txt avec le contenu suivant :

apple   5
banana  3
orange  7
grape   2
strawberry  6

Chaque ligne du fichier représente un fruit et son chiffre d'affaires, séparés par un caractère tabulation.

Charger des données dans Hive

Dans cette étape, nous allons créer une table Hive et charger l'ensemble de données d'échantillonnage dans celle-ci.

  1. Démarrez le shell Hive en exécutant la commande suivante :
hive
  1. Créez une nouvelle base de données appelée sorting_db :
CREATE DATABASE sorting_db;
  1. Utilisez la base de données sorting_db :
USE sorting_db;
  1. Créez une nouvelle table appelée fruit_sales avec deux colonnes : fruit (chaîne de caractères) et count (entier) :
CREATE TABLE fruit_sales (fruit STRING, count INT) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
  1. Chargez le fichier fruit_sales.txt dans la table fruit_sales :
LOAD DATA LOCAL INPATH '/home/hadoop/sorting_lab/fruit_sales.txt' OVERWRITE INTO TABLE fruit_sales;
  1. Vérifiez que les données ont été correctement chargées en exécutant une requête SELECT :
SELECT * FROM fruit_sales;

Ceci devrait afficher :

apple   5
banana  3
orange  7
grape   2
strawberry  6
  1. Sortez du shell Hive en exécutant la commande suivante :
quit;

Trier les données par usage

Dans cette étape, nous allons trier la table fruit_sales par la colonne count dans l'ordre décroissant en utilisant la clause ORDER BY d'Hive.

  1. Démarrez le shell Hive en exécutant la commande suivante :
hive
  1. Utilisez la base de données sorting_db :
USE sorting_db;
  1. Exécutez la requête suivante pour trier la table fruit_sales par la colonne count dans l'ordre décroissant :
CREATE TABLE result AS
SELECT * FROM fruit_sales ORDER BY count DESC;
SELECT * FROM result;

Ceci devrait afficher :

orange  7
strawberry  6
apple   5
banana  3
grape   2
  1. Sortez du shell Hive en exécutant la commande suivante :
quit;

Sommaire

Dans ce laboratoire, nous avons exploré la fonction "Trier par utilisation" dans Hadoop Hive. Nous avons commencé par configurer l'environnement et créer un ensemble de données d'échantillonnage. Ensuite, nous avons appris à charger les données dans une table Hive et à trier la table par une colonne spécifique en utilisant la clause ORDER BY.

Le laboratoire a offert une expérience pratique dans le travail avec Hive et a démontré comment trier les données en fonction des modèles d'utilisation. En maîtrisant cette compétence, vous pouvez analyser et optimiser efficacement l'allocation des ressources dans diverses situations, telles que la Station de Commerce Intergalactique.

Au cours du laboratoire, nous avons également utilisé des vérificateurs pour vérifier la réussite de chaque étape, vous assurant d'avoir acquis les connaissances et l'expérience pratique nécessaires pour affronter des défis similaires à l'avenir.