Week 9: Scaling the Data Layer - Fundamentals 
Learning Objectives 
  Explain the difficulties of scaling relational databases 
  Describe the advantages and disadvantages of partitioning and replication 
  Describe the strengths and weaknesses of distributed database  architectures 
  Explain how consistency and conflicts are handled in leaderless systems 
 
Mandatory Lecture Materials 
Slides are on Canvas.
Video lessons for the materials are here 
Mandatory Reading 
Chapters 10 and 11 of course book
Optional Reading/Viewing 
  Chapter 5 and 6, Designing Data-Intensive Applications, Martin Kleppmann, O’Reilly Publishing (available online at Snell library) 
  Scaling Relational Databases on AWS Excellent talk on Scalability and benchmarking for SyllaDB  - Powering Real-Time Apps with ScyllaDB: Low Latency & Linear Scalability - YouTube](https://youtu.be/-84JH4lqKM8) - recommeded! 
  A good general distribued architecture talk  
  This video is a deep dive into conflict resolution  for you algos nerds :) 
  Excellent article about how Slack scale their MySQL layer  
 
Labs 
Lab 9 Experiment with Lamport Clocks 
Back to Course Home Page