This schedule and syllabus is preliminary and subject to change. Reading assignments refer to the Tanenbaum book, unless otherwise specified.
Lectures and related materials are licensed for use under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License, attributed to Michael Freedman and Kyle Jamieson, Princeton University.
Date | Topics | Readings | Notes |
---|---|---|---|
Fundamentals | |||
Wed 09/13 | Principles of distributed systems (MF) [pdf] [pptx] | ||
Fri 09/15 | Go systems programming [zip] | ||
Mon 09/18 | Network communication and Remote Procedure Calls (KJ) [pdf] [pptx] | ||
Wed 09/20 | Network file systems: naming, cache control, consistency (MF) [pdf] [pptx] | ||
Time | |||
Fri 09/22 | Concurrency in Go, MapReduce [pdf] | Assignment 1-1 (Go) due Thurs night | |
Mon 09/25 | Time synchronization and logical clocks (KJ) [pdf] [pptx] | ||
Wed 09/27 | Vector clocks and distributed snapshots (KJ) [pdf] [pptx] | ||
Fri 09/29 | RPCs in Go [zip] | Assignment 1-2 (Simple MapReduce) due Thurs night | |
Eventual Consistency | |||
Mon 10/02 | Eventual consistency, Bayou (KJ) [pdf] [pptx] | Pre-reading: Bayou | |
Wed 10/04 | Peer-to-Peer Systems and Distributed Hash Tables (KJ) [pdf] [pptx] | Suggested reading: Chord | |
Fri 10/06 | Distributed Snapshots [zip] | Assignment 1-3 (Distributed MapReduce) due Thurs night | |
Mon 10/09 | Scale-out key-value storage, Dynamo (KJ) [pdf] [pptx] | Pre-reading: Dynamo | |
Wed 10/11 | Conflict resolution in eventual consistency (MF) [pdf] [pptx] | ||
Fri 10/13 | Dynamo and Bayou [pdf] | ||
Replicated State Machines | |||
Mon 10/16 | Replicated State Machines via Primary Backup (MF) [pdf] [pptx] | ||
Wed 10/18 | Reconfiguration and View Change Protocols (KJ) [pdf] [pptx] | ||
Fri 10/20 | Viewstamped Replication [pdf] | Assignment 2 (Chandy Lamport Snapshots) due | |
Mon 10/23 | Consensus and Paxos (MF) [pdf] [pptx] | ||
Wed 10/25 | Putting it together - Two-Phase Commit, Leader Election, RAFT (MF) [pdf] [pptx] | Pre-reading: Raft | |
Fri 10/27 | Midterm in-class exam | 10-11:30 or 11-12:30 in CS105 | |
Mon 10/30 | Fall break | ||
Wed 11/01 | Fall break | ||
Fri 11/03 | Fall break | ||
Mon 11/06 | Byzantine Fault Tolerance (KJ) [pdf] [pptx] | Suggested reading: Practical BFT | |
Stronger Consistency Models | |||
Wed 11/08 | Strong consistency and CAP Theorem (MF) [pdf] [pptx] | ||
Fri 11/10 | Raft [zip] | ||
Mon 11/13 | Causal consistency (MF) [pdf] [pptx] | Suggested reading: COPS | |
Transactions | |||
Wed 11/15 | Concurrency Control - Locking and Recovery (KJ) [pdf] [pptx] | Pre-reading: Franklin, up to and including §3.2 | |
Fri 11/17 | Consistency [zip] | ||
Mon 11/20 | Concurrency Control 2 - OCC and MVCC (MF) [pdf] [pptx] | ||
Wed 11/22 | Thanksgiving break | Assignment 3 (Raft Leader Election) due Tues night | |
Fri 11/24 | Thanksgiving break | ||
Mon 11/27 | Ditributed transactions, Spanner (MF) [pdf] [pptx] | Suggested reading: Spanner | |
Various Distributed Systems Topics | |||
Wed 11/29 | Blockchains (MF) [pdf] [pptx] | Pre-reading: Bitcoin | |
Fri 12/01 | Concurrency control [pdf] | ||
Mon 12/04 | Big data processing (MF) [pdf] [pptx] | ||
Wed 12/06 | Optional lecture--Spring Wireless Networks Course Preview (KJ) [pdf] | ||
Fri 12/08 | Big data systems [pdf] | ||
Mon 12/11 | Clustering scheduling and fairness (MF) [pdf] [pptx] | ||
Wed 12/13 | Content Delivery Networks (KJ) [pdf] [pptx] | ||
Fri 12/15 | Assignment 4 (Raft Log Consensus) due | ||
Reading Period | |||
Tue 01/16 | Assignment 5 (Key-Value Storage Service) due | ||
Fri 01/19 | Final exam 1:30pm - 4:30pm, CS Room 104 |
Last updated: 2018-01-14 22:57:53 -0500