2024-2025 / INFO8002-1

Topics in Distributed Systems

Durée

30h Th, 35h Proj.

Nombre de crédits

 Master en sciences informatiques, à finalité spécialisée en "computer systems security" (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master en sciences informatiques, à finalité spécialisée en "computer systems security" (double diplômation avec HEC) (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "management" (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "intelligent systems" (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master en sciences informatiques, à finalité spécialisée en "management" (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "computer systems security" (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master : ingénieur civil en informatique, à finalité spécialisée en "computer systems security" (double diplômation avec HEC) (années impaires, pas organisé en 2024-2025) 5 crédits 
 Master en sciences informatiques, à finalité spécialisée en "intelligent systems" (années impaires, pas organisé en 2024-2025) 5 crédits 

Enseignant

Bernard Boigelot, Christophe Debruyne, Pascal Fontaine, Guy Leduc, Laurent Mathy

Langue(s) de l'unité d'enseignement

Langue anglaise

Organisation et évaluation

Enseignement au deuxième quadrimestre

Horaire

Horaire en ligne

Unités d'enseignement prérequises et corequises

Les unités prérequises ou corequises sont présentées au sein de chaque programme

Contenus de l'unité d'enseignement

In the modern data landscape, distributed systems have become a critical component. They are of primary importance for the reliable storage, but also for the analysis of the increasingly larger volumes of data encountered in web-based applications, cloud computing centres or in networks of connected objects. 

However, distributed systems remain notoriously difficult to build because they need to scale to hundreds or thousands of machines, they must be tolerant to crashes, they have to cope with concurrent execution and they need to ensure consistency of the data they store. 

In this context, the course will cover elements of distributed systems in a bottom-up fashion. We will first cover the foundational abstractions that are the core of distributed systems, including basic abstractions and system assumptions, reliable broadcast, shared memory and consensus. We will then study data computing systems that are built on top of those components, including MapReduce and computational graph systems (Spark). Similarly, we will study distributed storage systems, including distributed file systems, distributed key-value stores and blockchains. 

Topics to be covered (tentative and subject to change):

  • Leader Election
  • Consensus
  • Clock Synchronization and Logical Clocks
  • Peer-to-Peer (P2P) Systems and Distributed Hash Tables (DHT)
  • Remote Procedure Calls (RPCs)
  • Blockchain
  • Cloud computing
  • Distributed file systems
  • Distributed Systems Verification

Acquis d'apprentissage (objectifs d'apprentissage) de l'unité d'enseignement

At the end of the course, the student will have understood the core building blocks of reliable distributed systems

Ce cours contribue aux acquis d'apprentissage I.1, I.2, II.1, II.2, III.1, III.2, III.3, IV.1, IV.3, VI.1, VI.2, VII.1, VII.2, VII.4, VII.5 du programme d'ingénieur civil en informatique.

Savoirs et compétences prérequis

Programming experience. Basic knowledge in computer networks.

The course INFO9012-1 Parallel Programming is a prerequisite.

Activités d'apprentissage prévues et méthodes d'enseignement

  • Theoretical lectures
  • Exercise sessions 
  • Reading assignment
  • Programming project

Mode d'enseignement (présentiel, à distance, hybride)

Cours donné exclusivement en présentiel


Informations complémentaires:

Lectures will be taught face-to-face. Projects will be carried out remotely.

Supports de cours, lectures obligatoires ou recommandées

Slides will be made publicly available on eCampus.

Modalités d'évaluation et critères

Travail à rendre - rapport

Evaluation continue


Informations complémentaires:

The evaluation for some parts of the course might be done as a written exam in the exam session rather than in continuous assessment, in particular in resit.

TBP

Stage(s)

Remarques organisationnelles et modifications principales apportées au cours

TBP

Contacts

Professors:

  • Bernard Boigelot
  • Christophe Debruyne
  • Pascal Fontaine (coordinator, mail -- office 1.71a/B28)
  • Guy Leduc (guy.leduc@uliege.be  -- office 1.73a/B28)
  • Laurent Mathy (mail -- office 1.15/B37)
Teaching assistant:

  • TBD

Association d'un ou plusieurs MOOCs