INT276 : Big Data sur mini cluster


Retour
Imprimer la fiche programme
Code analytique: EDOINT276
Responsable  : Laurent LECORNU
Co-responsable  : Cécile BOTHOREL
   
Programmé en UVINT276

Présentation :

Cet inter-semestre est une initiation aux fondamentaux Big Data. Elle initiera les participants à la mise en place d'un cluster sous Hadoop sur lequel ils mettront en pratique un cas d'application simple de manipulation d'un jeu de données volumineux.
    
    Hadoop est un framework libre et open source, écrit en Java, destiné à faciliter la création d'applications distribuées (au niveau du stockage des données et de leur traitement) et échelonnables (scalables en anglais) permettant aux applications de travailler avec des milliers de nœuds et des pétaoctets de données (cf. wikipedia). La philosophie est d'utiliser des machines ordinaires, peu chères, et de les mettre en réseau de façon robuste : la tolérance aux pannes fait qu'une machine défectueuse peut être débranchée en attendant d'être remplacée tout en maintenant la qualité de service. Le framework Hadoop gère de façon transparente la répartition des données et des traitements, ce qui permet de paralléliser les tâches et de passer à l'échelle en ajoutant le nombre de machine nécessaire. La popularité d'Hadoop vient du fait que ce framework permet assez facilement de construire un "cluster" Big Data robuste et échelonnable avec du matériel standard.
    
    Les étudiants utiliseront des Raspberry Pi comme machines (la notion de matériel standard est ici porté à son paroxysme !). Ils apprendront à les configurer puis les utiliser pour se rendre compte de la puissance de calcul du cluster réalisé avec du matériel plus que modeste. Ils pourront choisir parmi quelques projets proposés, mobilisant des statistiques de base, concevoir un programme map/reduce.

Objectifs (obsolète):

◦ Mettre en pratique des concepts clés d'informatique distribuée (machines en réseau, maître-esclaves, réplication de données, etc...)
◦ Être capable de connecter et configurer un cluster sous Hadoop
◦ Comprendre les notions principales d'Hadoop (HDFS, ressource management, ...)
◦ Comprendre les paradigmes de programmation map/reduce, DAG (Spark), ...
◦ Etre capable de manipuler le système de fichier
◦ Concevoir un programme en map/reduce

Pré-requis :

- Connaissance du shell sous linux.

Volume horaire : 21h


Contenu détaillé :

Jour 1
TP1 3h : Boot une machine, connexion en ssh (1 étudiant par machine), installation hadoop en single node (décompresser hadoop)
Cours1 / TP2 3h : Présentation Hadoop 3h aspects techniques (architecture physique et logicielle)

Jour 2
Cours2 1,5h + TP2 1,5h : HDFS et Resource Management, Namenodes, réplication, etc. Wordcount, décimales de Pi + voir les jobs
Cours3 / TP3 3h : Paradigmes de calcul : Map/Reduce, DAG,

Présentation des mini-projets aux étudiants

Jour 3
TP4 : Conception + organisation projet. Bootstrap de projet avec de l'aide
Présentation de leur projet par chaque groupe (tâches, architecture, organisation équipe)

Jour 4
Présentation de l'avancement de leur projet par chaque groupe (tâches, architecture, organisation équipe)
TP5 : travail en groupes tutorés

Jour 5 (vendredi matin)
TP6 : soutenance

On démantèle les petits clusters pour en construire un gros avec tous les raspberry pi disponibles, et on teste, on compare.


Année 2016/2017
Dernière mise à jour le 26-OCT-16
Validation par le responsable de programme le


IMT Atlantique
Campus de Brest
Technopôle Brest-Iroise
CS 83818
29238 Brest Cedex 3
France

Tél  +33 (0)2 29 00 11 11
Fax +33 (0)2 29 00 10 00