Telechargé par Hassan Hachicha

TPHive

publicité
TP Hive
Exercice N°1
1- Lancer Hive
[root@quickstart cloudera]# hive
2- Créer la base de données Cinema
hive> create database Cinema ;
hive> show databases; //Afficher les bases de données existantes
hive>use Cinema
3- Créer la table films dans la base de données Cinema
CREATE TABLE IF NOT EXISTS films(idFilm int, titre String, annee
int, realisateur int, genre String) ROW FORMAT DELIMITED FIELDS
TERMINATED BY ','
STORED AS TEXTFILE;
4- Afficher la structure de la table films
5- Charger les données du fichier texte Fims.txt dans la table films
hive> LOAD DATA LOCAL INPATH '/home/cloudera/Films.txt' OVERWRITE
INTO TABLE films;
6- Exécuter les requêtes suivantes
R1. Sélectionner tous les films
select * from films;
Formation Big DATA
1
R2. Sélectionner les films (titre, année, genre) du réalisateur 201
select * from films where realisateur=201;
R3. Sélectionner les films de genre Comédie
select * from films where genre='Comédie';
R4. Sélectionner les films de genre Comédie et qui sont produits après l’an 1990
select * from films where genre='Comédie' and annee>1990;
R5. Sélectionner le nombre de films de genre Aventure
select count(*) from films where genre='Aventure';
R6. Sélectionner le genre et le nombre de films par genre
select genre ,count(*) from films group by genre;
Exercice N°2
 Objectif : utiliser HUE pour gérer une base de données hive
Les données proviennent de pplapi, une base de données factices mais statistiquement représentative
de certaines caractéristiques de la population mondiale, comme le genre, la langue, le pays d'origine,
les coordonnées géographiques. Pour cette partie nous avons récolté 10000 agents de cette base de
données de manière aléatoire.
 Sélectionner l’éditeur Hive
Formation Big DATA
2
 Créer la base de données population, pour cela appuyer sur le bouton +
 Créer la table agents
hive> CREATE TABLE IF NOT EXISTS agents (country String, id bigint,
latitude double,longitude double, sex String)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;
 Charger les données du fichier agents.csv dans la table agents
LOAD DATA LOCAL INPATH '/home/cloudera/agents.csv'
OVERWRITE INTO TABLE agents;
 Executer les requêtes suivantes:
R1- afficher tous les agents
select * from agents;
R2- Liste des agents du pays France
select * from agents where country='France'
R-3 Liste des agents du pays France avec une latitude<0
select * from agents where country='France' and latitude<0
R-4 Afficher le nombre d’agents par pays
select country, count(*) from agents group by country;
Formation Big DATA
3
R-5 Afficher le nombre d’agents groupés par ville et sex
select country,sex, count(*) from agents group by country, sex;
R-6 Afficher le nombre d’agents groupés par sex du pays Algeria
select country,sex, count(*) from agents group by country, sex
having country="Algeria";
Formation Big DATA
4
Téléchargement