January | ||||||
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
03 | 04 | 05
18:30-19:50 Lecture
Introduction and Overview Reading: Google's Introduction to Distributed System Design Slides |
06 | 07 | 08 | 09 |
10 | 11 | 12
18:30-19:50 Lecture
Primary/backup Video+Quiz, Slides Reading: Design of a Practical System for Fault-Tolerant Virtual Machines |
13 | 14
18:30-19:50 Lecture
Time Synchronization Video+Quiz, Slides Reading (up to, but not including, the section on physical clocks): Lamport, Time, Clocks, and the Ordering of Events |
15 | 16 |
17 | 18
MLK Day
|
19
18:30-19:50 Lecture
Vector Clocks and Snapshots Vector Clock Video Transcript Slides Snapshot Video Transcript Slides Reading (focus on Section 10 and 13): Consistent Global States of Distributed Systems |
20 | 21
18:30-19:50 Lecture
Memory Consistency Video Transcript Slides Optional Reading: Linearizability: A Correctness Condition for Concurrent Objects |
22 | 23 |
24 | 25 | 26
18:30-19:50 Lecture
Distributed Caching and Coherence Video Slides Living Slides Reading: Leases, Optional reading: Tao (Section 6.1 on consistency) , CacheLib (use cases) |
27 | 28
18:30-19:50 Lecture
Internet and DNS (No live class) Video Slides Optional reading: E2e design, Akamai DNS |
29 | 30 |
31 | 01 | 02
18:30-19:50 Lecture
Sharding and CDNs Video Slides Living Slides Optional reading: Akamai paper Consistent Hashing Theory Dropbox Edge Blogpost |
03
23:59 Lab 2 due - Moved to Sunday 02/07
|
04 | 05 | 06 |
February | ||||||
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
07 | 08 | 09 | 10 | 11
18:30-19:50 Lecture
Scaling Transactions Video Slides Living Slides Reading (up to, but not including, three-phase commit): Bernstein, Hadzilacos, and Goodman, Distributed Recovery |
12 | 13 |
14 | 15
President's Day
|
16
18:30-19:50 Lecture
Availability and Failures Video Slides Living Slides Optional reading: NEAT, Nifty, Hacker News description on NewSQL DB failures |
17 | 18
18:30-19:50 Lecture
More on Failures Video Slides Living Slides Optional reading: DRAM Errors Study, Backblaze HDD Failure Stats |
19 | 20 |
21 | 22 | 23
18:30-19:50 Lecture
Clouds: Virtualization, Containers, Serverless Video Slides Living Slides Optional reading: Protean, LightVM, Firecracker |
24 | 25
18:30-19:50 Lecture
Scaling Architectures Video Slides Living Slides Optional reading: FB Kraken, FB DQBarge, CMU Autoscale |
26 | 27 |
28 | 01 | 02
18:30-19:50 Lecture
Case Study: Distributed Storage Systems Video Slides Living Slides Reading: The Google File System, optional reading: Azure Storage, Evolution of Ceph |
03 | 04
18:30-19:50 Lecture
Case Study: The Spanner Distributed DB Video Slides Living Slides Optional reading: Spanner: Google’s Globally-Distributed Database |
05 | 06 |
March | ||||||
Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
07 | 08 | 09
18:30-19:50 Lecture
Case Study: Distributed Data Analytics Video Slides Living Slides Optional reading: MapReduce, RDDs, Pat on Immutability |
10 | 11 | 12 | 13 |
14 | 15
23:59 Lab 3 due
|
16 | 17 | 18 | 19 | 20 |