DISTRIBUTED SYSTEMS

DISTRIBUTED SYSTEMS

_
iten
Last update 03/06/2021 15:10
Code
86799
ACADEMIC YEAR
2021/2022
CREDITS
6 credits during the 2nd year of 11160 COMPUTER ENGINEERING (LM-32) GENOVA
SCIENTIFIC DISCIPLINARY SECTOR
ING-INF/05
LANGUAGE
English
TEACHING LOCATION
GENOVA (COMPUTER ENGINEERING )
semester
1° Semester
Teaching materials

OVERVIEW

The course aims to provide knowledge on issues related to the implementation of distributed processing systems with high scalability and reliability.

AIMS AND CONTENT

LEARNING OUTCOMES

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

AIMS AND LEARNING OUTCOMES

At the end of the course the student will be able to face the design and implementation of complex distributed systems both on public and private frameworks and the design of systems and applications based on highly scalable and reliable IT platforms.

Teaching methods

Lessons and lab work

SYLLABUS/CONTENT

Essential Content:

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

RECOMMENDED READING/BIBLIOGRAPHY

Bibliography:

  • 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
  • additional documentation available thorugh aulaweb

TEACHERS AND EXAM BOARD

Ricevimento: on appointment established thorugh email: pierpaolo.baglietto@unige.it

LESSONS

Teaching methods

Lessons and lab work

ORARI

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

EXAMS

Exam description

lab work and oral discussion

Assessment methods

Ability to solve simple design and programming issues on the course topics

Knowledge of the topics discussed in the lesson and the ability to analyze and discuss the topics discussed