0% ont trouvé ce document utile (0 vote)
91 vues5 pages

Compte de mots avec Hadoop et Java

Transféré par

nouharakrouki822
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
91 vues5 pages

Compte de mots avec Hadoop et Java

Transféré par

nouharakrouki822
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Word Count

MAPREDUCE

HADID | BIG DATA | Date


WordCount
Word Count est surnommé le "Hello World !" de Hadoop. Ce programme compte le
nombre d’occurrences de chaque mot dans un corpus représentant l’ensemble des
œuvres de Shakespeare.

Le développement et la mise en œuvre d’un programme Hadoop comprennent en


général les phases suivantes :

− Préparation des données.

− Importation des données dans HDFS.

− Ecriture du programme Hadoop et validation en environnement de test.

− Exécution du programme Hadoop en environnement de production.

− Récupération et analyse des résultats.

1. PRÉPARATION DES DONNÉES


La totalité de l’œuvre de Shakespeare est stockée dans un seul fichier au format Plain
Text UTF-8 provenant du projet Gutenberg (http://www.gutenberg.org/). Ce fichier
peut être téléchargé à l’adresse http://www.gutenberg.org/ebooks/100. Si cette adresse
ne fonctionne pas, lancer une recherche Google sur l’expression download shakespeare
works. Le fichier téléchargé est enregistré sur le bureau sous le nom pg100.txt.

Le fichier se présente sous la forme d’un ensemble de lignes, chaque ligne se terminant
par un signe de nouvelle ligne (\n). Chaque ligne est composée de mots séparés par un
espace ou est vide.

PAGE 1
2. Importation des données dans HDFS
Pour importer le fichier pg100.txt dans HDFS, procédez de la manière suivante :

 Ouvrez le Terminal.

 Dans HDFS, créez le sous-répertoire data dans le répertoire courant, puis


assurez-vous que le répertoire data a bien été créé.

 Copiez le fichier local pg100.txt dans le répertoire data.

 Vérifiez que le fichier pg100.txt est bien présent dans HDFS.

Les commandes à utiliser sont les suivantes :

3. WordCount en Java
Ouvrez d'abord Eclipse -> puis sélectionnez Fichier -> Nouveau -> Projet Java
-> Nommez-le WordCount -> puis Terminez.

Créez trois classes Java dans le projet. Nommez-les WordCountDriver (ayant la


fonction principale), WordCountMapper, WordCountReducer.

a. Le driver.

Le driver est un programme Java qui s’exécute généralement sur la machine cliente
(donc pas dans le cluster Hadoop). Il permet de configurer le job puis de le soumettre
au cluster Hadoop pour exécution.

Vous devez copier-coller le programme dans le fichier Driver.doc dans


WordCountDriver Class.

b. Le mapper

PAGE 2
Le mapper est un programme Java exécuté en parallèle sur plusieurs nœuds esclaves
(slave nodes) du cluster Hadoop, chaque instance étant un mapper. Chaque mapper
compte le nombre d’occurrences d’un mot dans une partie des œuvres de Shakespeare
(les reducers se chargeant de synthétiser le travail des mappers).

Vous devez copier-coller le programme dans le fichier mapper.doc dans


WordCountMapper Class.

c. Le reducer

Le reducer est un programme Java exécuté en parallèle sur plusieurs nœuds esclaves
(slave nodes) du cluster Hadoop, chaque instance étant un reducer. Chaque reducer :

 Se voit affecter par Hadoop un sous-ensemble de l’ensemble des mots


constituant les œuvres de Shakespeare.
 Est chargé, pour chaque mot de ce sous-ensemble, de cumuler les comptages
de ce même mot issus, le cas échéant, de différents mappers.

Vous devez copier-coller le programme dans le fichier reducer.doc dans


WordCountReducer Class.

d. Compilation et exécution du job


Vous devez maintenant créer un fichier jar.
Faites un clic droit sur Projet-> Cliquez sur Export-> Sélectionnez la destination
d'exportation en tant que fichier Jar-> Nommez le fichier jar (WC.jar) -> Cliquez sur
suivant -> enfin cliquez sur Terminer.
Copiez maintenant ce fichier dans le répertoire Workspace de Cloudera

Le programme WordCount est prêt à être exécuté.

Exécution du job
La commande permettant de lancer WordCount s’analyse de la
façon suivante :

hadoop jar WC.jar WordCountDriver data wordcounts

hadoop : la commande à exécuter est une commande Hadoop, pas Linux.


jar : la commande à exécuter est jar, qui lance l’exécution d’un fichier JAR.
WC.jar : le fichier à exécuter est wc.jar.
WordCountDriver : nom de la classe à appeler pour lancer le job.
data : répertoire contenant les données en entrée.

PAGE 3
wordcounts : répertoire contenant les résultats en sortie.

L’exécution du job donne lieu à l’affichage de nombreux messages. Quelques


messages importants

Pour afficher les résultats :

Notez le nom du fichier contenant les résultats issus des reducers (un fichier par
reducer, donc un seul fichier dans notre cas car, en mode pseudo-distribué, un seul
reducer est utilisé).

 Copiez le fichier de Hadoop sur le Bureau.

 Visualisez le contenu du fichier à l’aide de gedit.

Les commandes à utiliser sont les suivantes :

PAGE 4

Vous aimerez peut-être aussi