TP Big Data (Hadoop, Spark)

Cet espace recueille les supports de cours et les fichiers nécessaires à la réalisation des travaux pratiques du module MSO 31 de Technologies Informatique du Big Data, enseignés dans la filière Informatique (3A) de l’École Centrale de Lyon.

Cette page ne traite que des enseignements que je réalise dans ce module. Les informations concernant les bases de données MongoDB (cours de Mr Elöd Egyed-Zsigmond) sont disponibles sur l’espace moodle associé à ce cours (sur pedagogie3.ec-lyon.fr).

Stéphane Derrode, École Centrale de Lyon, Dpt MI, LIRIS (CNRS UMR 5205).


Informations générales

Récapitulatif des séances de cours et de TP :

  • 2 séances de 2h de cours;
  • 2 séances de TP de 4h (Hadoop avec la librairie MRJobs, et Spark avec la librairie PySpark), et une séance de TP de 2h (compléments sur Spark : librairies MLlib et SparkStreaming).

Évaluation :

  • la note finale est constituée de la moyenne des 3 notes de Tps (mongoDB, Hadoop, Spark), évalués grace à vos Comptes-Rendus (CRs).
  • Les 2 CRs associés à Hadoop et Spark doivent être déposés sur l’espace moodle de ce cours sur pedagogie3.ec-lyon.fr (le travail à réaliser est spécifié ci-dessous), avant la fin de séance.

Déroulé des séances

Séance #1 (2h) - cours Hadoop

  • Objectif du cours
  • Présentation du framework Hadoop/map-reduce avec la librarie MRJobs slides.
  • Présentation du TP #1 qui se déroulera en séance #2.
  • Travail de préparation en vue du TP
  • En préparation au TP, installez le logiciel Docker sur vos machines et le container Docker Linux/Hadoop que j’ai préparé, selon les consignes données dans le TP #1. Attention, le téléchargement est très volumineux et nécessite une machine avec au moins 3 GO libre de disque dur. Prenez-vous en avance pour faire cette installation !

Séance #2 (4h) - TP Hadoop

  • Travaux pratiques
  • Réalisez l’exercice décrit dans le TP #1 et préparez un CR de votre travail (Groupe #1 : matin, Groupe #2 : après-midi). Vous déposerez ce CR sur pedagogie3.ec-lyon.fr avant la fin de séance (un seul fichier compressé contenant le rapport et les codes sources).
  • Le rapport doit être synthétique, mettre en exergue les points-clés de votre code, et montrer les résultats d’exécution (juste quelques lignes si le résultat est volumineux). Le rapport sera nécessairement au format md (markdown) ou au format pdf (et non doc ou docx), et devra contenir une page de garde (nom du/des étudiants, date, titre TP et du module, nom de l’encadrant…).

Séance #3 (2h) - cours Spark

  • Objectif du cours
  • Présentation du framework Spark slides.
  • Présentation du TP #2 qui se déroulera en séance #4.
  • Travail de préparation en vue du TP
  • Réalisez la partie 1 du TP #2, concernant la programmation fonctionnelle en Python.
  • Commencez la partie 2, jusqu’à la section wordcount en Spark (y compris cette section).

Séance #4 (4h) - TP Spark

  • Travaux pratiques
  • Travail hebdomadaire à faire pour la séance suivante
  • Préparer un CR concernant la partie 2: The MovieLens Database (et uniquement cette partie là), avec les mêmes consignes que le CR précédent.

Séance #5 (2h) - Spark streaming et MLlib

  • Travaux pratiques
  • Réalisez le TP #3. Il n’y a pas de CR prévu pour cette séance.