Développer une application Big Data avec Hadoop

Lancer un workflow Oozie

Testez gratuitement nos 1324 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Lancez votre workflow Oozie et vérifiez le démarrage séquentiel de vos différentes actions MapReduce.
05:10

Transcription

Alors, il va nous falloir à présent lancer notre workflow Oozie, c'est une opération qui est relativement simple mais qui nécessite un minimum de préparation. D’abord, il va nous falloir un répertoire de travail sur l'hdfs. Pour cela nous pouvons créer, par exemple, hdfs dfs -mkdir /app et ça va nous faire le répertoire de travail app. Ensuite, il va falloir mettre le workflow.xml directement dans ce répertoire et directement sur l'hdfs. Pour cela rendons-nous directement dans notre projet qui est dans workspace MonApp et nous allons faire un hdfs dfs -put de workflow.xml qui est dans src d'ailleurs, workflow.xml pour le mettre sur /app. Nous envoyons le fichier workflow.xml sur app et nous allons vérifier en faisant un hdfs dfs -ls de /app. Nous voyons que là nous avons le fichier workflow.xml dessus. À présent, nous allons pouvoir essayer de lancer Oozie, cependant, il va avoir besoin d'avoir toutes les librairies de disponibles, directement sur l'hdfs. D'abord, celle concernant notre code, nous allons exporter un JAR, donc, via éclipse, on coche tout et on on l'exporte dans monapp.jar, voilà. Il nous faut juste l'envoyer dans un répertoire qui sera pour nous /app/lib, c'est forcément le répertoire lib de notre répertoire de travail. Donc, nous allons faire un mkdir de ce répertoire, nous allons retourner à notre home et nous allons pouvoir faire un hdfs dfs -put de monapp. jar et que nous allons mettre dans app/lib. Alors, nous venons d'envoyer le jar concernant notre code, notre mapper, notre reducer, notre combiner, notre partitioner, notre grouping comparator, notre sort comparator et notre clé composite. Il nous faut également les autres librairies que nous allons utiliser et pour cela notamment, toutes les librairies relatives à Hbase. Il y a plusieurs solutions pour ce faire : soit vous modifiez directement Oozie pour lui dire de regarder dans le class pass d'Hbase, sinon, une des solutions les plus simples est de copier directement tous les jars d'Hbase directement dans notre lib. Pour ce faire, c'est relativement simple pour faire un hdfs dfs -put de usr/lib/hbase, on va récupérer tous les jars, *. jar et nous allons mettre ça dans app/lib. Ça va prendre un petit peu de temps, le temps qu'il copie tout, voilà, c'est assez rapide quand même et nous allons faire la même chose pour toutes les dépendances, c'est-à-dire tout ce qu'il y a dans usr/lib/hbase/lib et de la même façon, vous allez copier tous les jars dans l'hdfs sur app/lib. Alors il y en a en double en l’occurrence, il n'y a pas de souci, il ne va pas les écraser et on peut être sûr de les avoir. On va vérifier qu'on a tout, grâce à la commande hdfs dfs -ls /app/lib et on voit qu'on a tout un ensemble de librairies qui vont être chargées automatiquement avec notre job. Il ne nous reste plus qu'à lancer notre job et pour ça, nous avons la commande Oozie qui va prendre, en premier paramètre, le type de commande que l'on veut faire, on veut contrôler un job, ensuite, on fait -run pour le lancer et on va avoir besoin comme paramètre systématiquement de spécifier : -run-oozie, l'url de notre Oozie, pour nous : http://quickstart.cloudera, le nom de la machine, le port pour Oozie, ça va être 11000... .../oozie et voilà. Nous allons devoir spécifier également le fichier de configuration, le fichier .properties qui est resté en local et qui se spécifie directement au moment de lancement du job, donc, dans notre cas, ça va être dans notre home workspace MonApp, c'est dans src/processor.properties. Et nous pouvons lancer cette commande pour lancer réellement le job oozie. Alors, celui-ci ne se lance pas parce que nous n'avons pas redémarré Oozie au préalable, il nous reste à redémarrer Oozie et à pouvoir relancer la commande pour que celui-ci se lance. Nous avons un identifient de job et nous pouvons voir ce job tourner directement dans l'interface d'Oozie, dont le bookmark dans Firefox, nous permet d'y accéder facilement. Nous voyons notre job qui s'est lancé, ainsi que les différentes actions ici qui vont s'exécuter dans l'ordre.

Développer une application Big Data avec Hadoop

Concevez une application Big Data avec la suite Hadoop. Stockez des données dans l'HDFS et dans HBase, traitez-les en MapReduce sous YARN, exportez-les dans MySQL via Sqoop, etc.

2h31 (25 vidéos)
Aucun commentaire n´est disponible actuellement
 

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !