Mise en oeuvre de l'application MapReduce
Mettez en oeuvre une application MapReduce.
Créer le fichier JAR d'application
Exécutez mvn clean package
à partir du dossier racine du projet pour créer le fichier JAR de l'application dans le dossier cible. Par exemple : wordcountjava-1.0-SNAPSHOT.jar
.
mvn clean package
Cette commande nettoie tous les artefacts de compilation précédents, télécharge toutes les dépendances qui n'ont pas déjà été installées, puis crée et emballe l'application.
Une fois la commande terminée, le répertoire wordcountjava/target
contient un fichier nommé wordcountjava-1.0-SNAPSHOT.jar
.
Note
Le fichier
Le fichier
wordcountjava-1.0-SNAPSHOT.jar
est un fichier uberjar, qui contient non seulement la tâche WordCount, mais également les dépendances dont la tâche a besoin lors de l'exécution.Exécution du fichier JAR d'application MapReduce
Copiez le fichier JAR sur n'importe quel noeud. Par exemple :
- yarn jar /tmp/wordcountjava-1.0-SNAPSHOT.jar org.apache.hadoop.examples.WordCount /example/data/input.txt /example/data/wordcountout
Paramètres :
/example/data/input.txt
: Chemin HDFS pour le fichier texte d'entrée/example/data/wordcountout
: Chemin HDFS pour le résultat (sortie du réducteur)
Exemple de sortie :
>> hdfs dfs -cat /example/data/wordcountout/*
zeal 1
zelus 1
zenith 2
Note
Le fichier
Le fichier
wordcountjava-1.0-SNAPSHOT.jar
est un fichier JAR volumineux s'il est créé au moyen du plugiciel maven-shade. Vous pouvez également utiliser -libjars
comme option pour fournir des fichiers JAR supplémentaires au chemin de classe de travail. Dans une grappe sécurisée, kinit
et les politiques Ranger appropriées sont requises avant la soumission de la tâche.