Planeamento

Aulas Teóricas

Presentation of the course

Presentation of the course. Evaluation method. Bibliography. 

System Models

Physical models. Architectural models. Fundamental models. (Chapter 2)

Group Communication

Introduction to group communication. JGroups. (Chapter 6)

Pub/Sub

Introduction to publish-subscribe systems. (Chapter 6)

Publish-subscribe systems and message queues

Architecture of publish-subscribe systems. Example systems. Message queues (chapter 6).

Distributed shared memory

Distributed shared memory. (chapter 6)

Tuple spaces

Tuple spaces: model and implementation (chapter 6)

Introduction to peer-to-peer systems

Introduction to peer-to-peer systems and network overlays. Structured P2P systems. Chord. (chapter 10)

Peer-to-peer systems: examples

Continuation from the previous class: PASTRY.

Some concrete peer-to-peer systems and applications. Oceanstore. (chapter 10)

P2P & Time and physical clocks

End of the P2P applications. Time, physical clocks, clock synchronization. (chapter 14)

Logical time a logical clocks

Clock synchronization (end). Lamport´s logical clocks. Vector clocks. (chapter 14) 

Global states

Consistent cut. Snapshot algorithm. (chapter 14)

Mutual-exclusion

Introduction to mutual-exclusion. Ricart and Agrawala's algorithm. (chapter 15)

Mutual-exclusion.

Maekawa´s algorithm for mutual exclusion.  Leader Election. (chapter 15).

Coordination in group communications

Reliable multicast, FIFO, causal and total order multicast. (chapter 15)

Implementing total order

Skeen´s algorithm for total order. Using total order to implement mutual exclusion with quorums.

Consensus and related problems

Consensus. Interactive consistency. Total order broadcast. (chapter 15)

Consensus related problems (continued)

Total order multicast. View-synchrony. Total order using view-synchrony. (chapter 15)

Concurrency control techniques

Optimistic and pessimistic concurrency control. (chapter 16)

Distributed transactions

Concurrency control in distributed transactions. Distributed deadlock detection. (chapter 17).

The gossip architecture

The gossip architcture. (chapter 18)

Bayou

Bayou and optimistic replication/ eventual consistency. (chapter 18)

Distributed File Systems: CODA

Distributed File Systems: CODA (chapter 18)

   - Architecture

   - Main use cases

Case-study: google

Google spanner (related to subjects covered in chapter 21).

Case Study: Google

Other google services (chapter 21)

Revision of the course

Revisiting the courses. Q&A preparation for the exam.