Subscribe to this calendar (Google, iCal, etc.)
Date | Description |
---|---|
January 6 |
Introduction and Web Application Architecture(Tom) Slides |
January 8 |
Remote Procedure Call Part 2 (Tom) Slides |
January 10 |
Primary Backup (Stephanie) Reading (up to How Distributed Consensus Works): Managing Critical State Slides |
January 13 |
Primary Backup, part 2 (Stephanie) Slides |
January 15 |
Lab 2: Primary Backup Slides |
January 17 |
Time and Virtual Clocks (Tom) Reading (up to, but not including, the section on physical clocks): Lamport, Time, Clocks, and the Ordering of Events Slides |
January 22 |
Vector Clocks (Tom) Reading (focus on Section 10): Consistent Global States of Distributed Systems Slides Slides plus State Transitions |
January 27 |
Replicated State Machines and Paxos Part 1 (Stephanie) Reading (How Distributed Consensus Works up to Distributed Consensus Performance): Managing Critical State Slides |
January 29 |
Paxos Part 2 (Stephanie) Lamport, Paxos Made Simple Slides |
January 31 |
MultiPaxos (Stephanie) Slides |
February 3 |
MultiPaxos Part 2 (Stephanie) Reading (first 20 pages): van Renesse and Altinbuken, Paxos Made Moderately Complex Optional reading: Oki and Liskov, Viewstamped Replication: A New Primary Copy Method to Support Highly-Available Distributed Systems Slides |
February 5 |
Lab 3: Multipaxos Illustrated Slides |
February 7 |
Memory Consistency (Tom) Reading (focus on sections 4 and 5): Lamport, On Interprocess Communication Slides |
February 12 |
Memory Consistency Part 2 (Tom) Optional reading: CockroachDB's consistency model Slides and more slides |
February 14 |
Distributed Cache Coherence (Tom) Slides |
February 19 |
Sharding (Tom) Slides |
February 21 |
Two-phase commit (Stephanie) Reading (up to, but not including, three-phase commit): Bernstein, Hadzilacos, and Goodman, Distributed Recovery Slides |
February 24 |
Non-blocking two-phase commit (Stephanie) Optional reading: CockroachDB Slides |
February 26 |
Lab 4 Part 3 Slides |
March 3 |
Microservices (Tom) Reading (blog): Saokar et al., ServiceRouter: Hyperscale and Minimal Cost Service Mesh at Meta Optional: Yegge, Google Platform Rant Blog choice #1 (3 of 6) Slides |
March 5 |
Mapreduce (Stephanie) Reading (blog): Dean and Ghemawat, MapReduce: Simplified Data Processing on Large Clusters Blog choice #2 Slides |
March 7 |
BigTable (Tom) Reading (blog): Chang et al., Bigtable: A Distributed Storage System for Structured Data Optional: Burrows, The Chubby lock service for loosely-coupled distributed systems Blog choice #3 Slides |
March 10 |
Bitcoin (Stephanie) Reading: Nakamoto, Bitcoin: A Peer-to-Peer Electronic Cash System Blog choice #4 Slides |
March 12 |
Dynamo (Tom) Reading: Decandia, Dynamo: Amazon's Highly Available Key-Value Store Optional: Elhemali et al., Amazon DynamoDB Blog choice #5 Slides |
March 14 |
Ray (Stephanie) Sections 1-2 of Moritz et al., Ray: A Distributed Framework for Emerging AI Applications and Wang et al., Ownership: A Distributed Futures System for Fine-Grained Tasks Blog choice #6 Slides |