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/28 | Introduction + course overview | [pdf] [pptx] | |
Thu 08/31 | Go systems programming | [pdf] [handout] | See also the Go syntax reference |
Mon 09/04 | MapReduce case study | [pdf] [pptx] | Pre-reading: MapReduce |
Fundamentals | |||
[video] Due by 09/07 | Network communication and Remote Procedure Calls | [pdf] [pptx] | |
Thu 09/07 | Concurrency and RPCs in Go | [pdf] [handout] [code] | Suggested reading: "Concurrency" portion of a Tour of Go |
Wed 09/13 | Assignment 1 due at 11:59pm | ||
[video] Due by 09/14 | Time and logical clocks 1 | [pdf] [pptx] | |
[video] Due by 09/14 | Time and logical clocks 2 | [pdf] [pptx] | |
Thu 09/14 | Discussion: Time and logical clocks | ||
Wed 09/20 | Assignment 2 due at 11:59pm | ||
[video] Due by 09/21 | Distributed snapshots | [pdf] [pptx] | |
Thu 09/21 | Discussion: Distributed snapshots | ||
Eventual Consistency and Scaling Out | |||
Mon 09/25 | Eventual consistency, Bayou | [pdf] [pptx] | Pre-reading: Bayou |
Thu 09/28 | Peer-to-Peer Systems and Distributed Hash Tables | [pdf] [pptx] | Suggested reading: Chord |
Mon 10/02 | Scale-out key-value storage, Dynamo | [pdf] [pptx] | Pre-reading: Dynamo |
Thu 10/05 | No class | ||
Big Data | |||
[video] Due by 10/12 | Big data processing | [pdf] [pptx] | |
Replicated State Machines | |||
Mon 10/09 | Replicated State Machines via Primary-Backup | [pdf] [pptx] | |
Thu 10/12 | Lab 1 | ||
Mon 10/16 | Mid-semester Break | ||
Thu 10/19 | Lab 2 | ||
Mon 10/23 | Lab 3 | ||
Thu 10/26 | Midterm in-class exam (1h:15m) | ||
Mon 10/30 | View Changes and Reconfiguration | [pdf] [pptx] | See also Viewstamped Replication Revisited |
Thu 11/02 | Consensus with Paxos | [pdf] [pptx] | |
Mon 11/06 | Raft | [pdf] [pptx] | Pre-reading: Raft See also an online lecture about Raft by John Ousterhout |
Thu 11/09 | 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 | |||
Mon 11/13 | Consistency Models | [pdf] [pptx] | |
Wed 11/15 | Assignment 3-1 due at 11:59pm | ||
Thu 11/16 | CAP, FLP | [pdf] [pptx] | See also A Brief Tour of FLP Impossibility |
Mon 11/20 | Scalable Causal Consistency | [pdf] [pptx] | Suggested reading: COPS |
Thu 11/23 | Atomic Commit and Concurrency Control | [pdf] [pptx] | See also: Franklin, up to and including §3.2 |
Mon 11/27 | Distributed transactions 1 | [pdf] [pptx] | Suggested reading: Spanner |
Wed 11/29 | Assignment 3-2 due at 11:59pm | ||
Thu 11/30 | Distributed transactions 2 | [pdf] [pptx] | |
Mon 12/04 | No class | ||
System Evaluation | |||
Thu 12/07 | Reasoning about System Performance | [pdf] [pptx] | |
Thu 12/07 | Assignment 4 due at 11:59pm | ||
Sun 12/10, 1:00-4:00PM | Final exam |
Last updated: 2023-11-16 9:26