Il corso si propone di fornire conoscenze sulle problematiche relative alla realizzazione di sistemi di elaborazione distribuiti e ad elevata scalabilità e affidabilità.
Il corso si propone di descrivere i principi, le tecnologie e gli algoritmi sui quali è basata l'architettura dei servizi su rete Internet e in generale in tutti i sistemi distribuiti. In particolare i contenuti del corso sono: 1. Caratterizzazione dei Sistemi Distribuiti 2. Metodi e strumenti di sincronizzazione (sincronizzazione di clock logici e fisici, mutua esclusione distribuita, algoritmi e protocolli per l'elezione di leader). Caso di studio: Hyperledger permissioned Blockchains 3. Metodi e strumenti per la consistenza dei sistemi distribuiti (piattaforme data centric, piattaforme client centric, protocolli per la consistenza). Caso di studio: piattaforma di collaborazione MS Office Online 4. Resilienza dei sistemi distribuiti (process pooling distribuito e sua resilienza, servizi di trasmissione dati affidabili, operation commit distribuito, ripristino di sistemi compromessi). Caso di studio: Piattaforma Google per calcolo e storage distribuito, Data Stores distribuiti.
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à.
Lezioni ed esercitazioni
Contenuti essenziali:
1. Distributed systems characterization
2. Coordination of distributed systems
3. Consistency of distributed systems
4. Resilience of distributed systems
5. Case studies
Bibliografia:
Ricevimento: su appuntamento da richiedere via email: pierpaolo.baglietto@unige.it
PIERPAOLO BAGLIETTO (Presidente)
ALBERTO GIORDANO
MASSIMO MARESCA (Presidente Supplente)
Progetto didattico e orale
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