DISTRIBUTED SYSTEMS

DISTRIBUTED SYSTEMS

_
iten
Codice
86799
ANNO ACCADEMICO
2021/2022
CFU
6 cfu al 2° anno di 11160 COMPUTER ENGINEERING (LM-32) GENOVA
SETTORE SCIENTIFICO DISCIPLINARE
ING-INF/05
LINGUA
Inglese
SEDE
GENOVA (COMPUTER ENGINEERING )
periodo
1° Semestre

PRESENTAZIONE

Il corso si propone di fornire conoscenze sulle problematiche relative alla realizzazione di sistemi di elaborazione distribuiti e ad elevata scalabilità e affidabilità.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

The course aims to provide an understanding of the principles on which the Internet and other distributed systems are based; their architecture, algorithms and design; and how they meet the demands of contemporary distributed applications. 1. Distributed systems characterization 2. Coordination of distributed systems Physical and logical clock synchronization Distributed mutual exclusion Election algorithms and protocols 3. Consistency of distributed systems Data centric systems Client centric systems Consistency protocols 4. Resilience of distributed systems Distributed process pooling and resilience Reliable distributed communication services Distributed operation commit Recovery of faulty systems 5. Case studies Hyperledger permissioned blockchains Google distributed storage and computation In memory Distributed Data Store Office online collaboration platforms

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

Al termine del corso l'allievo sarà in grado di affrontare la progettazione e realizzazione di reti complesse in un contesto di rete pubblica sia in contesti di rete privata e la progettazione di sistemi e applicazioni basati sulle piattaforme informatiche ad elevata scalabilità e affidabilità.

Modalità didattiche

Lezioni ed esercitazioni

PROGRAMMA/CONTENUTO

Contenuti essenziali:

1. Distributed systems characterization

2. Coordination of distributed systems

  • Physical and logical clock synchronization
  • Distributed mutual exclusion
  • Election algorithms and protocols

3. Consistency of distributed systems

  • Data centric systems
  • Client centric systems
  • Consistency protocols

4. Resilience of distributed systems

  • Distributed process pooling and resilience
  • Reliable distributed communication services
  • Distributed operation commit
  • Recovery of faulty systems

5. Case studies

  • Hyperledger permissioned blockchains
  • Google distributed storage and computation
  • In memory Distributed Data Store
  • Office online collaboration platforms

TESTI/BIBLIOGRAFIA

 

Bibliografia:

  • M. van Steen, A. tanenbaum,  Distributed Systems Third Ed. 2017
  • G. Coulouris, J. Dollimor, T. Kindberg, G. Blair, Distributed Systems: Concepts and Desing, 5th editionby 2012
  • Materiale didattico disponibile su aulaweb.

DOCENTI E COMMISSIONI

Ricevimento: su appuntamento da richiedere via email: pierpaolo.baglietto@unige.it

LEZIONI

Modalità didattiche

Lezioni ed esercitazioni

ORARI

L'orario di tutti gli insegnamenti è consultabile su EasyAcademy.

ESAMI

Modalità d'esame

Progetto didattico e orale

Modalità di accertamento

capacità di risolvere semplici problemi di progettazione e di programmazione sugli argomenti del corso

conoscenza degli argomenti trattati a lezione e capacità di analisi e discussione delle tematiche trattate