CS-240 Syllabus

Schedule

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.

Creative Commons License

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

Last updated: 2024-09-29 08:18