1. Dissenyar sistemes distribuïts escalables.
2. Identificar les característiques principals d'un sistema distribuït.
3. Entendre un article de caire científic sobre sistemes distribuïts.
4. Assimilar les principals tècniques utilitzades en sistemes distribuïts.
1. Fonaments de sistemes distribuïts
a. Arquitectures Shared-nothing vs shared-memory
b. El problema de l'exclusió mútua en arquitectures distribuïdes
i. L'algorisme de Peterson
ii. L'algorisme del forner (Lamport)
c. Control de concurrència
i. Control de concurrència optimista
ii. Control de concurrència pessimista
d. Vector clocks
e. Sincronització distribuïda
i. 2-Phase-Locking
ii. Protocols de consens
f. Tolerància a fallides i recuperació
i. Models de fallida
1. Fallides Bizantines
2. Fallides Crash/stop
ii. Polítiques de recuperació
1. Selecció de líder.
2. K-safety
g. Estratègies i primitives de comunicació
i. Pas de missatges & RPCs
ii. Cues de missatges
iii. Difusió en ordre total
iv. Difusió amb garanties
h. Propietats de correctesa
i. Vivacitat
ii. Seguretat
i. Replicació de dades
i. Replicació ansiosa
ii. Replicació mandrosa
iii. Còpia primària
iv. Update Everywhere
v. Protocols avançats de replicació
2. Models de referència
a. Arquitectures client-servidor
b. Arquitectures multi-nivell (N-tier)
c. Arquitectures clusteritzades
d. Arquitectures P2P
3. Solucions existents
a. Google File System
b. Amazon DynamoDB
c. Yahoo PNUTS
d. Hadoop
i. HDFS
ii. Map/Reduce
Aquesta assignatura combina continguts i explicacions de caire teòric amb exercicis o micro-pràctiques destinades a consolidar els coneixements adquirits per l´alumnat.
Per tant, es combinen les sessions magistrals, amb sessions pràctiques.
Tots els exercicis proposats, sense excepció, s´hauran de lliurar i aprovar per tal de poder superar l´assignatura. Si aquests exercicis es lliuren abans de la data de l´examen de la convocatòria ordinària i es superen les entrevistes corresponents, la nota final de l´assignatura serà el promig de la nota obtinguda en els exercicis. Altrament, caldrà resoldre un examen final. Llavors, quan tots els exercicis estiguin aprovats i l´examen tingui una nota igual o superior a 4 (quatre), la nota final es calcularà com:
Nota assignatura: 0.6*Nota examen + 0.4*Nota promig exercicis.