This schedule and syllabus is preliminary and subject to change.
Lectures and related materials are licensed for use under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. Michael Freedman and Kyle Jamieson developed much of the original material.
Date | Topics | Readings | Notes |
---|---|---|---|
Fundamentals | |||
Sun 08/26 | Course overview [pdf] [pptx] | ||
Wed 08/29 | Case study: GFS [txt] | Pre-reading: GFS | Assignment 1 out |
Sun 09/02 | Network communication and Remote Procedure Calls [pdf] [pptx] | ||
Tue 09/04 1:00PM-2:30PM | Go systems programming [pdf] [pptx] [code] | See also the Go syntax reference | |
Wed 09/05 | Network file systems [pdf] [pptx] | See also the book chapters on AFS and NFS from the Wisconsin OS book | |
Time | |||
Sun 09/09 | Time synchronization and logical clocks [pdf] [pptx] | ||
Tue 09/10 1:00PM-2:30PM | Concurrency in Go [pdf] [pptx] [code] | Suggested reading: "Concurrency" portion of a Tour of Go | |
Wed 09/12 | Vector clocks and distributed snapshots [pdf] [pptx] | More on Chandy-Lamport [txt] [pptx] | |
Eventual Consistency | |||
Sun 09/16 | Eventual consistency, Bayou [pdf] [pptx] | Pre-reading: Bayou | |
Tue 09/18 1:00PM-2:30PM | RPCs in Go [code] | ||
Wed 09/19 | Peer-to-Peer Systems and Distributed Hash Tables [pdf] [pptx] | Suggested reading: Chord | Assignment 1 due |
Sun 09/23 | Saudi National Day | Assignment 2 out | |
Tue 09/25 1:00PM-2:30PM | Scale-out key-value storage, Dynamo [pdf] [pptx] | Pre-reading: Dynamo | |
Replicated State Machines | |||
Wed 09/26 | Replicated State Machines via Primary Backup [pdf] [pptx] | ||
Sun 09/30 | Reconfiguration and View Change Protocols [pdf] [pptx] | See also Viewstamped Replication Revisited | |
Tue 10/01 1:00PM-2:30PM | Virtualization and containerization | ||
Wed 10/03 | Consensus and Paxos [pdf] [pptx] | See also A Brief Tour of FLP Impossibility | |
Sun 10/07 | No class | ||
Tue 10/09 1:00PM-2:30PM | Consensus | ||
Wed 10/10 | No class | ||
Sun 10/14 | Putting it together - Leader Election, Raft [pdf] [pptx] | Pre-reading: Raft See also an online lecture about Raft by John Ousterhout |
Assignment 2 due Assignment 3 out |
Wed 10/17 | Midterm review session | Send your questions by Tue, 12pm! | |
Sun 10/21 | No class | ||
Wed 10/24 | Midterm in-class exam (1h:15m) | Covering till Raft | |
Stronger Consistency Models | |||
Sun 10/28 | Fall break | ||
Tue 10/30 2:30-4:00PM | Byzantine Fault Tolerance [pdf] [pptx] | Suggested reading: Practical BFT See also an online lecture about BFT by Barbara Liskov |
|
Wed 10/31 | Strong consistency and CAP Theorem [pdf] [pptx] | ||
Transactions | |||
Sun 11/04 | Causal consistency and Two-Phase Commit [pdf] [pptx] | See also COPS | |
Wed 11/07 | Concurrency Control [pdf] [pptx] | Pre-reading: Franklin, up to and including §3.2 | |
Sun 11/11 | More CC and Distributed transactions, Spanner [pdf] [pptx] | Suggested reading: Spanner | |
Various Distributed Systems Topics | |||
Wed 11/14 | Virtualization and Cloud computing [pdf] [pptx] | See also the book chapter on Virtual Machines from the Wisconsin OS book | Assignment 3 due Assignment 4 out |
Sun 11/18 | Security [pdf] [pptx] | Dr. Amedeo Sapio | |
Wed 11/21 | Blockchain [pdf] [pptx] | Pre-reading: Bitcoin | |
Sun 11/25 | Performance evaluation [pdf] [pptx] | ||
Wed 11/28 | Data-intensive computing I: graph processing, distributed ML [pdf] [pptx] | Suggested reading: GraphLab and Distributed GraphLab | |
Sun 12/02 | Data-intensive computing II: stream processing, coordination [pdf] [pptx] | ||
Wed 12/05 | Final review session | Bring your questions! Assignment 4 due |
|
TBA | Final exam |
Last updated: 2018-12-02 11:30:38