Objectifs

Cette UE vise à donner les clés algorithmiques aux étudiants pour programmer des applications et systèmes sur des infrastructures parallèles et distribuées. Les étudiants apprendront les algorithmes de consensus distribués principaux (y compris ceux des technologies blockchains) et sauront les utiliser à bon escient dans la construction d'un système distribué à grande échelle. Ils comprendront les intérêts et les limites des différents paradigmes de programmation parallèle et distribués et seront donc en capacité de sélectionner les outils les plus utiles au développement d'une application ou d'un système distribué, par exemple dans le cas du big data.

Programme

  • Problèmes fondamentaux des systèmes parallèles et distribués : les délais de communication et les pannes.
  • Problématiques induites par la distribution : ordonnancement, réplication et consistance.
  • Algorithmique distribuée et consensus distribué.
  • Modèles de programmation parallèle et distribuée.
  • Sensibilisation à la consommation énergétique des applications et infrastructures distribuées.
  • Mise en œuvre des connaissances acquises dans un projet de traitement « big data » basé sur des données ouvertes.