Ensimag Rubrique Formation 2022

Distributed Systems & Cloud Architectures - WMMBESDA

  • Number of hours

    • Lectures 23.0
    • Tutorials 23.0

    ECTS

    ECTS 3.5

Goal(s)

This module has two main objectives. The first objective is to master the basic algorithmic concepts underlying distributed systems. For instance, we will study the notions of machine failures, synchronous vs asynchronous communications, fault detection. The second objective is to discover and use some of the main distributed systems used in BigData systems. For instance, we will study and use systems to collect, store, and process data. We will focus on the distributed characteristics of these systems (fault tolerance, scalability).

Contact Vivien QUEMA

Content(s)

This module contains two complementary parts:

The first part is about the basic algorithmic concepts underlying distributed systems. Within this part, we will study the following concepts: machine failures, synchronous vs asynchronous communications, fault detection, etc. We will illustrate these notions via the study of a set of algorithms that form the basis of most distributed systems (broadcast, consensus, etc.).

The second part is focused on the the study of some of the main distributed systems used in BigData systems. In particular, we will explain how these systems ensure fault tolerance and scalability. There will be lab sessions to practice with these systems.



Prerequisites

Notions of concurrent programming.
Notions of operating systems.
Algorithms for centralized systems.

Test



(2*E+TP)/3

Additional Information

Curriculum->Big-Data Post-Graduate Program->Semester 9

Bibliography

Introduction to Reliable and Secure Distributed Programming.
Christian Cachin, Rachid Guerraoui, and Luís Rodrigues.

Big Data - Principles and best practices of scalable realtime data systems.
Nathan Marz and James Warren