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, attributed to Wyatt Lloyd and Michael Freedman, Princeton University. Materials are derived from those shared by Michael Freedman, Kyle Jamieson and Wyatt Lloyd, Princeton University under the same license.
Date | Topics | Slides | Readings |
---|---|---|---|
Fundamentals | |||
Wed 09/11 | Course overview and intro | [pdf] [pptx] | |
Fri 09/13 | Go systems programming | [pdf] [pptx] | [syntax] [intro] [soln] |
Mon 09/16 | Network communication and Remote Procedure Calls | [pdf] [pptx] | |
Wed 09/18 | Caching and consistency : NFS and the Web | [pdf] [pptx] | |
Fri 09/20 | Concurrency in Go, MapReduce | [pdf] [pptx] | |
Mon 09/23 | Time and Logical Clocks | [pdf] [pptx] | |
Tues 09/24 | Assignment 1-1 (Go) due at 11:59pm | ||
Wed 09/25 | Vector clocks | [pdf] [pptx] | |
Fri 09/27 | RPCs in Go | [pdf] [pptx] | [wc-server] |
Fri 09/27 | Assignment 1-2 (Simple MapReduce) due at 11:59pm | ||
Eventual Consistency and Scaling Out | |||
Mon 09/30 | Distributed snapshots | [pdf] [pptx] | [blackboard] |
Wed 10/02 | Eventual consistency, Bayou | [pdf] [pptx] | Suggested reading: Bayou |
Thurs 10/03 | Assignment 1-3 (Distributed MapReduce) due at 11:59pm | ||
Fri 10/04 | Distributed Snapshots | [pdf] [pptx] | [handout][soln] |
Mon 10/07 | Peer-to-Peer Systems and Distributed Hash Tables | [pdf] [pptx] | Suggested reading: Chord |
Wed 10/09 | Scale-out key-value storage, Dynamo (Jeff Helt) | [pdf] [pptx] | Suggested reading: Dynamo |
Fri 10/11 | Dynamo and Bayou | [pdf] [pptx] | |
Replicated State Machines | |||
Mon 10/14 | Replicated State Machines via Primary Backup | [pdf] [pptx] | |
Wed 10/16 | Google's Consistent, Global Authorization System (Dr. Ramon Caceres) | [conference talk + slides + paper] | |
Thurs 10/17 | Assignment 2 (Chandy Lamport Snapshots) due at 11:59pm | ||
Fri 10/18 | System Design | [pdf] [pptx] | |
Mon 10/21 | Replicated State Machines - View Change and Consensus | [pdf] [pptx] | |
Wed 10/23 | Midterm exam, 9-10:50am. 418 students with last names A-N go to CS 104. 418 students with last names O-Z go to PNI A32. All 518 students go to PNI A32. |
||
Fri 10/25 | Review of Midterm, 10-11:50am, in CS 104. (No separate precepts.) | ||
Mon 10/28 | Fall recess | ||
Wed 10/30 | Fall recess | ||
Fri 11/01 | Fall recess | ||
Mon 11/04 | Replicated State Machines - RAFT | [pdf] [pptx] | Pre-reading: RAFT |
Wed 11/06 | Replicated State Machines - RAFT, continued | ||
Fri 11/08 | RAFT | [pdf] [pptx] | [slides w solutions pdf] [slides w solutions pptx] [handout] |
Strong Consistency and Scaling Out with Transactions | |||
Mon 11/11 | Consistency | [pdf] [pptx] | Wed 11/13 | Atomic Commit and Concurrency Control | [pdf] [pptx] |
Fri 11/15 | Consistency | [pdf] [pptx] | [handout] |
Mon 11/18 | Scalable Causal Consistency | [pdf] [pptx] | Suggested reading: COPS |
Wed 11/20 | OCC and MVCC | [pdf] [pptx] | |
Thurs 11/21 | Assignment 3 (Raft Leader Election) due at 11:59pm | ||
Fri 11/22 | Concurrency Control | [pdf] [pptx] | |
Mon 11/25 | Spanner | [pdf] [pptx] | Suggested reading: Spanner |
Wed 11/27 | Thanksgiving recess | ||
Fri 11/29 | Thanksgiving recess | ||
Mon 12/02 | CAP, PRAM, and SNOW | [pdf] [pptx] | Suggested reading: CAP, PRAM (Theorem 1), SNOW (Sections 3 & 4) |
Making Systems Faster | |||
Wed 12/04 | Distributed Video Processing | [pdf] [pptx] | Suggested reading: SVE |
Fri 12/06 | Spanner and SNOW | [pdf] [pptx] | |
Mon 12/09 | Reasoning about System Performance | [pdf] [pptx] | |
Wed 12/11 | Tying It All Together | [pdf] [pptx] | |
Fri 12/13 | Assignment 4 (Raft Log Consensus) due at 11:59pm | ||
Reading Period | |||
Tues 01/14 | Assignment 5 (Key-value Storage Service) due at 5:00pm | ||
Mon 01/20 | Final exam, Friend Center 101, 7:30-10:30pm |