ebook img

Professeur superviseur ALAIN APRIL PDF

66 Pages·2015·1.65 MB·French
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Professeur superviseur ALAIN APRIL

RAPPORT TECHNIQUE PRÉSENTÉ À L’ÉCOLE DE TECHNOLOGIE SUPÉRIEURE DANS LE CADRE DU COURS GTI792 PROJET DE FIN D'ÉTUDES EN GÉNIE DES TI SYS870 PRÉPARATION D’UN LABORATOIRE BIG DATA À L’AIDE DE DOCKER JULIEN BÉLIVEAU BELJ22119008 DÉPARTEMENT DE GÉNIE LOGICIEL ET DES TI Professeur superviseur ALAIN APRIL MONTRÉAL, 10 AOÛT 2015 ÉTÉ 2015 REMERCIEMENTS Je tiens à remercier mon professeur-superviseur Alain April. Il m’a donné la chance de travailler sur ce projet qui m’a appris beaucoup de choses. Il a aussi été compréhensif lorsque j’ai demandé d’avoir plus de temps pour terminer ce rapport. David Lauzon est une autre personne envers laquelle je suis très reconnaissant. Il m’a guidé tout au long du projet et répondait à mes questions en cas de problème. Il a aussi su adapter les heures de nos rencontres en tenant compte de mon horaire de travail. J’aimerais également à remercier Sébastien Bonami et François Langelier. Leur travail dans le cadre du projet Adamcloud m’a donné un exemple de comment bien travailler avec les fichiers Docker. Finalement, je veux aussi mentionner Michaël Faille, étudiant au baccalauréat. Son arrivée à la fin du projet m’a permis de débloquer sur certains points techniques grâce à son expertise concernant Linux et Docker. SYS870 PRÉPARATION D’UN LABORATOIRE BIG DATA À L’AIDE DE DOCKER JULIEN BÉLIVEAU BELJ22119008 RÉSUMÉ Ce rapport présente le travail qui a été fait dans le cadre d’un projet de fin d’études réalisé pour le cours « GTI792 – Projet de fin d’études en génie des TI » à l’École de technologie supérieure. Le cours de maîtrise « SYS870 – Introduction au Big Data » va être enseigné pour la première fois à l’automne 2015. Il a été décidé qu’un laboratoire pratique serait pertinent pour tester la compréhension des étudiants. L’objectif du projet était d’aider les enseignants du cours à préparer l’infrastructure du laboratoire et son contenu. Le laboratoire utilise la technologie de conteneur Docker pour l’hébergement de l’environnement où sont exécutées les applications. Les conteneurs existeront sur un serveur de l’ÉTS et une coordination avec l’école a été faite pour que les ressources soient prêtes et accessibles. Une image Docker d’Hadoop a été peaufinée et une image de HBase a été créée. Les deux sont simples et offrent une persistance des données en cas de problème avec un conteneur. Les ports pour leur interface web sont accessibles. D’autres images ont été travaillées et pourraient être ajoutées dans le futur, mais elles ont été mises de côté par manque de temps. Les données météorologiques GSOD ont été choisies comme dataset à avoir dans des tables HBase. Elles se séparent en une table data et une table station. Le téléchargement, la fusion et le formatage ont été automatisés dans un script. Les données ont également été converties au format CSV pour permettre l’importation dans HBase. Une tâche MapReduce a été choisie pour faire les importations. Des questions variées à poser concernant les données ont été déterminées afin de forcer différentes conceptions de table. Des requêtes pour répondre à ces questions ont été créées et la conception de clé qu’elles utilisent a été présentée. La table data utilise la clé « stationID_date » ou « date_stationID » tandis que la table station utilise « stationID_wban » ou « country_state_stationID ». La réponse à la première question a été trouvée à l’aide de l’outil de ligne de commande HBase et les suivantes ont été trouvées avec l’aide de l’API Java. Des programmes Java ont donc été créés. Le problème majeur qui a été rencontré est le fonctionnement d’un service YARN dans l’image Hadoop. L’importation des données dans HBase en dépendait et a beaucoup été délayée à cause du problème qui a finalement été réglé. IV Finalement, pour les prochaines itérations du laboratoire, d’autres images comme Sqoop et Hive pourraient être ajoutés. Les données HBase qui résident localement sur le serveur pourraient aussi être mises dans HDFS. HBase pourrait être utilisé en mode distribué et un préfixe pourrait être ajouté à chaque clé pour empêcher un engorgement de trafic sur un serveur particulier. TABLE DES MATIÈRES Page INTRODUCTION .....................................................................................................................1 CHAPITRE 1 MISE EN CONTEXTE ......................................................................................2 1.1 Big Data .........................................................................................................................2 1.2 Adamcloud .....................................................................................................................3 1.3 Cours SYS870 ................................................................................................................3 1.4 Problématique ................................................................................................................4 1.5 Objectifs .........................................................................................................................4 CHAPITRE 2 IMAGES DOCKER ...........................................................................................5 2.1 Hadoop ...........................................................................................................................5 2.2 HBase .............................................................................................................................7 2.3 Autres .............................................................................................................................7 CHAPITRE 3 DONNÉES GSOD .............................................................................................9 3.1 Contexte .........................................................................................................................9 3.2 Téléchargement ..............................................................................................................9 3.3 Script maître .................................................................................................................10 3.4 Formatage ....................................................................................................................10 3.5 Importation ...................................................................................................................11 3.6 Étendue ........................................................................................................................11 CHAPITRE 4 LABORATOIRE ..............................................................................................13 4.1 Questions......................................................................................................................13 4.2 Conception des tables ..................................................................................................13 4.3 Critères de correction ...................................................................................................15 4.4 HBase Shell ..................................................................................................................15 4.5 Programmes Java .........................................................................................................16 4.6 Coordination avec l’ÉTS..............................................................................................17 CHAPITRE 5 PROBLÈMES RENCONTRÉS .......................................................................18 5.1 Fonctionnement de YARN sur l’image Hadoop ..........................................................18 5.2 Ports HBase ..................................................................................................................19 5.3 Problèmes organisationnels .........................................................................................19 CHAPITRE 6 TRAVAUX FUTURS ......................................................................................20 6.1 Intégration de HBase à HDFS ......................................................................................20 6.2 Utilisation de HBase en mode distribué.......................................................................20 6.3 Ajout d’un « salt » aux clés HBase ..............................................................................20 6.4 Ajout de nouvelles images Docker ..............................................................................21 CONCLUSION ........................................................................................................................23 VI RECOMMANDATIONS ........................................................................................................24 LISTE DE RÉFÉRENCES ......................................................................................................25 BIBLIOGRAPHIE ...................................................................................................................27 ANNEXE I COMPTES RENDUS HEBDOMADAIRES .....................................................29 ANNEXE II DOCKERFILE POUR HADOOP ......................................................................37 ANNEXE III DOCKERFILE POUR HBASE ........................................................................38 ANNEXE IV README.MD DES DOCKERFILES ..............................................................39 ANNEXE V DICTIONNAIRE DE DONNÉES GSOD ..........................................................40 ANNEXE VI SCRIPTS DE RÉCUPÉRATION DES DONNÉES GSOD .............................42 ANNEXE VII DOCUMENTATION SUR LES SCRIPTS GSOD .........................................46 ANNEXE VIII QUESTIONS CANDIDATES POUR LE LABORATOIRE .........................47 ANNEXE IX COMMANDES ET PROGRAMMES JAVA RÉPONDANT AUX QUESTIONS .................................................................................................48 LISTE DES TABLEAUX Page Tableau 1 Volumes en utilisant la commande VOLUME ............................................5 Tableau 2 Volumes en utilisant le paramètre –v...........................................................6 LISTE DES FIGURES Page Figure 2 Charges de serveurs HBase mal balancés ..................................................21 Figure 3 Charges de serveurs HBase bien balancés .................................................21 LISTE DES ABRÉVIATIONS, SIGLES ET ACRONYMES API Application Program Interface CSV Comma Separated Values ÉTS École de technologie supérieure FTP File Transfer Protocol GSOD Global Surface Summary of the Day HDFS Hadoop Distributed File System NOAA National Oceanic and Atmospheric Administration PFE Projet de fin d’études TI Technologies de l’Information VM Virtual Machine YARN Yet Another Resource Manager LISTE DES SYMBOLES ET UNITÉS DE MESURE Mo Mégaoctet

Description:
Le cours de maîtrise « SYS870 – Introduction au Big Data » va être enseigné pour du cours à préparer l'infrastructure du laboratoire et son contenu.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.