Vous êtes ici

  1. Accueil
  2. Données distribuées

Données distribuées

Données distribuées

En pratique :

Volume horaire de cours : 12
Volume horaire global de TP : 20
Langue principale : français
Nombre de crédits européens : 3

Description du contenu de l'enseignement

L'objectif de ce cours est de comprendre comment optimiser le stockage et l'interrogation de données sur des architectures parallèles, distribuées, ou dans le Cloud. Dans la première partie, après un rappel du modèle relationnel et de l'optimisation des requêtes dans le cas centralisé, on présente différentes architectures et algorithmes parallèles ou distribués (jointures). Dans la seconde partie, on présente les techniques utilisées par les bases NoSQL en mettant l'accent sur certaines technologies comme MapReduce, Pig, Spark et Neo4j.


Compétences à acquérir

  • Déployer un MapReduce avec HDFS, Hadoop, Pig
  • Déployer Neo4j et interroger des graphes en Cypher
  • Interroger des données en Spark (Scala)

Modalités d’organisation et de suivi

  • Cours
  • Modèle relationnel : optimisation classique (rappel)
  • Architectures centralisées, parallèles, distribuées (SM,SD,SN, Cloud)
  • Algorithmes associés
  • Introduction aux méga-données (Big Data) et NoSQL
  • MapReduce : HDFS, Hadoop, Pig
  • Spark
  • Neo4j, Cypher

 

  • Travaux dirigés
  • Algorithmes de jointure distribués
  • Limitation du parallélisme

 

  • Travaux pratiques
  • (facultatif) Optimisation classique
  • HDFS
  • Hadoop (Java)
  • Pig
  • Spark (Sala)
  • Neo4j

Intervenant(s)

DAVID GROSS-AMBLARD

Pré-requis

Pré-requis obligatoires

  • Algèbre relationnelle et SQL
  • Algorithmique classique
  • Notions d'architecture des machines