Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Ce TP, vous permet de faire vos premiers pas avec Hadoop. Pour ceci il faut preparer l'environnement
logiciel necessaire. Le plus simple c'est de telecharger et de se connecter a une machine virtuelle dans
laquelle Hadoop, ainsi qu'un grand nombre d'outils de son ecosysteme, sont preinstalles. Pour ceci, il
est recommande de telecharger la machine virtuelle « Hadoop Training Virtual Machine » tournant
sous Ubuntu. Pour utiliser cette machine, il est recommande d'installer « Virtual Box » qui est un
logiciel de virtualisation disponible en tant qu'hote sur plusieurs systemes d'exploitation, notamment
Windows, Linux 32 et 64 bits et Mac OS. Une fois Virtual Box installe, ouvrez-le et im jportez le
fichier HadoopTraining. ova et suivez les instructions qui apparaissent. A la fin de cette etape,
vous pourrez demarrer la machine virtuelle et travailler. Vous aurez notamment besoin d'ouvrir un
terminal pour ecrire les differentes commandes vous permettant d'executer le travail demande. Avant
d'ecrire toute commande hadoop, il faut d'abord lancer les differents services en tapant :
startCDH.sh.
En cas de problème lors du lancement du safemode, lancer l’instruction
hdfs dfsadmin -safemode leave
1
Hadoop fs -mv < Path[Filename]> <rep> Deplacer le fichier sous le repertoire
rep
2
1. Créer un fichier mapper.py et y écrire le code du mapper.
2. Executer mapper : chmod +x mapper.py
3. Tester le code propose en local sur les 15 premieres lignes du fichier drac.txt en tapant
l'instruction suivante : tail drac.txt | mapper.py
4. Creer le fichier reduce.py et y ecrire le code du reducer.
5. Executer reducer: chmod +x reducer.py
6. Tester le code propose en local sur les 15 premieres lignes du fichier drac.txt en tapant
l'instruction suivante : tail drac.txt | mapper.py | sort | reducer.py
Cette instruction donne en parametres les fichiers correspondant aux Mappers et Reducers, aussi bien
que les repertoires contenant le fichier d'entree (myinput) et la sortie a generer (joboutput). Le
repertoire de sortie, apres execution, contiendra un fichier appele part-00000, representant la sortie
desiree.
Remarque :
Le repertoire d'entree doit contenir un seul fichier. Le repertoire de sortie ne doit pas exister avant
l'execution de l'instruction.
Pour faciliter le travail, creer un raccourci pour cette instruction (dans le fichier ~/.bashrc). Executer
desormais l'instruction suivante :
hs mapper.py reducer.py myinput joboutput
Exercices to do
Partie IV : Total de ventes
Comme son nom l'indique, le fichier purchases.txt comporte un ensemble de lignes decrivant les
ventes d'un ensemble de magasins. Chaque ligne est composee de 5 champs separes par des tabulations
sous la forme suivante :
3
date time store item cost
On se propose dans ce qui suit, de calculer le total des ventes par magasin.
4
5.
6.
Partie V : Statistiques des ventes
Dans cette partie, vous allez travailler sur le fichier purchases.txt qui vous a ete deja fourni.
Les differents champs de ce fichier sont de la forme suivante :
date temps magasin produit cout
Ecrire les mappers et reducers permettant de :
1. Donner le total des ventes par categorie de produits.
2. Donner le montant de la vente le plus eleve pour chaque magasin.
3. Quel est le nombre total des ventes et la valeur totale des ventes de tous magasins confondus?
Verifier tous les resultats obtenus en vous referant au fichier de donnees utilise.