Textbooks

You can follow the content of the course using Distributed Systems: Concepts and Design (5th Edition)

We will indicate besides each lecture below which sections of the textbook correspond to the lecture.

Programming Help

Grading

Your final grade for the course will be based on the following items:

  • 45% Programing Projects (4)
    • 5% Chord, 10% Tapestry, 10% Raft, 20% PuddleStore
  • 15% Homeworks (4)
  • 15% Midterm Exam
  • 25% Final Exam

The four written homework assignments will all be done individually. The zeroth program, Whatsup, will also be done individually, while the remaining programs will be completed in groups of two (2).

Schedule

Date Topics Notes Readings
Thu 01/28 L1 - Introduction
[-notes.pdf] [.pdf] [screencast]
WhatsUp (optional assignment) due and Chord out
Tue 02/02 L2 - Peer-to-Peer Part 1
[-notes.pdf] [.pdf] [screencast]
Chapter 10
Thu 02/04 L3 - Peer-to-Peer Part 2
[-notes.pdf] [.pdf] [screencast]
Chapter 10
Tue 02/09 L4 - Peer-to-Peer Part 3
[-notes.pdf] [.pdf] [screencast]
Chapter 10
Thu 02/11 L5 - Comm (Networks)
[-notes.pdf] [.pdf] [screencast]
HW1 out
Tue 02/16 L5 - Comm (Networks cont.)
[-notes.pdf] [.pdf] [screencast]
Chord due (11:59pm)
Thu 02/18 L6 - Comm (RPC)
[-notes.pdf] [.pdf] [screencast]
HW1 due (11:59pm), Tapestry out Chapter 5
Tue 02/23 No Class
Long Weekend
Thu 02/25 L7 - Security
[-notes.pdf] [.pdf] [screencast]
Chapter 11
Tue 03/01 L8 - Security (cont.)
[-notes.pdf] [.pdf] [screencast]
Chapter 11
Thu 03/03 L9 - Time
[-notes.pdf] [.pdf] [screencast]
Tapestry due (11:59 pm) Chapter 14
Tue 03/08 L10 - Global State
[-notes.pdf] [.pdf] [screencast]
Chapter 14
Wed 03/09
HW2 out
Thu 03/10 L11 - Raft
[-notes.pdf] [.pdf]
Chapter 15
Tue 03/15 L11 - Raft (cont.)
Wed 03/16
HW2 due (11:59pm)
Thu 03/17 L12 - Debugging
[.pdf]
Colouris 14.6
Tue 03/22 L13 - Gossip
[-notes.pdf] [.pdf] [screencast]
Tue 03/22 Midterm
At 7PM and on material up to L11
Thu 03/24 L14/15 - Bayou/Distributed File Systems I
[-notes.pdf] [.pdf] [-notes.pdf] [.pdf] [screencast]
Raft out
Tue 03/29 No Class
Spring Break
Thu 03/31 No Class
Spring Break
Tue 04/05 L16 - Distributed File Systems II
[-notes.pdf] [.pdf] [screencast]
Thu 04/07 L17 - Google
[-notes.pdf] [.pdf] [screencast]
HW3 out
Tue 04/12 L18 - Distributed Transactions
[-notes.pdf] [.pdf] [screencast]
Puddlestore out
Thu 04/14 L19 - Byzantine Consensus
[-notes.pdf] [.pdf] [screencast]
Raft due (11:59 pm)
Tue 04/19 L20 - Final Project (PuddleStore) Discussion
[-notes.pdf] [.pdf] [screencast]
Puddlestore slides HW3 due (11:59 pm) Puddlestore Handout
Thu 04/21 L21/22 - Practical Consensus/Self Stable
[-notes.pdf] [.pdf] [-notes.pdf] [.pdf] [screencast]
Tue 04/26 L23 - Dynamo
[-notes.pdf] [.pdf] [screencast]
Thu 04/28 L24 - ZooKeeper
[-notes.pdf] [.pdf] [screencast]
HW4 out
Sat 05/07 No class
HW4 due (11:59pm)
Mon 05/09 No class
PuddleStore due (11:59pm)
Wed 05/18 Final exam
2PM