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. Wyatt Lloyd has updated it.
| Date | Topics | Slides | Readings |
|---|---|---|---|
| Mon 08/30 | Introduction | [pdf] [pptx] | |
| Wed 09/01 | Course overview | [pdf] [pptx] | |
| Fundamentals | |||
| Mon 09/06 | Network communication and Remote Procedure Calls | [pdf] [pptx] | |
| Tue 09/07 1:00PM-2:30PM |
Go systems programming, MapReduce | [pdf] [pptx] | See also the Go syntax reference |
| Wed 09/08 | RPCs and Failure | [pdf] [pptx] | |
| Mon 09/13 | Time and logical clocks 1 | [pdf] [pptx] | |
| Tue 09/14 2:30PM-4:00PM |
Concurrency and RPCs in Go | [pdf] [pptx] [code] | Suggested reading: "Concurrency" portion of a Tour of Go |
| Wed 09/15 | Time and logical clocks 2 | [pdf] [pptx] | |
| Thu 09/16 | Assignment 1 due at 11:59pm | ||
| Mon 09/20 | Distributed snapshots | [pdf] [pptx] | |
| Eventual Consistency and Scaling Out | |||
Sun 09/26 4:45PM-6:15PM |
Eventual consistency, Bayou | [pdf] [pptx] | Pre-reading: Bayou |
| Thu 09/23 | Assignment 2 due at 11:59pm | ||
| Mon 09/27 | Peer-to-Peer Systems and Distributed Hash Tables | [pdf] [pptx] | Suggested reading: Chord |
| Wed 09/29 | Scale-out key-value storage, Dynamo | [pdf] [pptx] | Pre-reading: Dynamo |
| Replicated State Machines | |||
| Mon 10/04 | Replicated State Machines via Primary-Backup | [pdf] [pptx] | |
| Wed 10/06 | Midterm in-class exam (1h:15m) | ||
| Mon 10/11 | View Changes and Consensus | [pdf] [pptx] | See also Viewstamped Replication Revisited |
| Wed 10/13 | Consensus with Paxos | [pdf] [pptx] | |
| Mon 10/18 | Mid-semester Break | ||
| Wed 10/20 | Raft | [pdf] [pptx] | Pre-reading: Raft See also an online lecture about Raft by John Ousterhout |
| Mon 10/25 | Byzantine Fault Tolerance | [pdf] [pptx] | Suggested reading: Practical BFT See also an online lecture about BFT by Barbara Liskov |
| Strong Consistency and Scaling Out with Transactions | |||
| Wed 10/27 | Consistency Models | [pdf] [pptx] | |
| Mon 11/01 | Scalable Causal Consistency | [pdf] [pptx] | Suggested reading: COPS |
| Wed 11/03 | No class (WEP unveiling) | ||
| Mon 11/08 | Atomic Commit and Concurrency Control | [pdf] [pptx] | See also: Franklin, up to and including §3.2 |
| Wed 11/10 | CAP, FLP | [pdf] [pptx] | See also A Brief Tour of FLP Impossibility |
| Mon 11/15 | Big Data Lab 1 | ||
| Tue 11/16 | Assignment 3-1 due at 11:59pm | ||
| Wed 11/17 | |||
| Sun 11/21 4:45PM-6:15PM |
Big Data Lab 2 | ||
| Mon 11/22 | Distributed transactions 1 | [pdf] [pptx] | Suggested reading: Spanner |
| Wed 11/24 | Distributed transactions 2 | [pdf] [pptx] | |
| Various Distributed Systems Topics | |||
| Mon 11/29 | Reasoning about System Performance | [pdf] [pptx] | |
| Wed 12/01 | Big data processing | [pdf] [pptx] | |
| Thu 12/02 | Assignment 3-2 due at 11:59pm | ||
| Mon 12/06 | Final review session | Bring your questions! | |
| Wed 12/08 | No class | ||
| Thu 12/09 | Assignment 4 due at 11:59pm | ||
| Sun 12/12 1:00PM-4:00PM |
Final exam | ||
Last updated: 2021-12-02 14:37