Classic Papers
Paper |
Topic |
Authors |
What is it? |
Amazon Dynamo |
Distributed Storage |
Amazon |
A highly available distributed data store built for Amazon's massive scale.
|
Big Table |
Distributed Storage |
Google |
A distributed storage system for managing structured data that is designed to scale to a very large size: petabytes of data across thousands of commodity servers |
Google File System |
Distributed Storage |
Google |
A scalable distributed file system for large distributed data-intensive applications |
Memcache at Facebook |
Distributed Storage |
Facebook |
How Facebook leverages memcached as a building block to construct and scale a distributed key-value store that supports the world’s largest social network. |
Cassandra |
Distributed Storage |
Facebook |
A distributed storage system for managing very large amounts of structured data spread out across many commodity servers, while providing highly available service with no single point of failure. |
Spanner |
Distributed Storage |
Google |
A scalable, multi-version, globallydistributed, and synchronously-replicated database. |
Map Reduce |
Distributed Processing |
Google |
A programming model and an associated implementation for processing and generating large data sets |
Spark |
Distributed Processing |
UC Berkeley |
A distributed memory abstraction that lets programmers perform in-memory computations on large clusters in a fault-tolerant manner |
Apache Kafka |
Distributed Messaging |
LinkedIn |
A distributed messaging system for collecting and delivering high volumes of log data with low latency |
Raft |
Distributed Consensus |
Stanford |
A consensus algorithm for managing a replicated log. See MIT Lecture for more. |
TAO |
Architecture |
Facebook |
A simple data model and API tailored for serving Facebook's massive social graph, and TAO, its implementation. |
Zookeeper |
Architecture |
Yahoo |
A service for coordinating processes of distributed applications. |
Google Search |
Architecture |
Stanford |
Sergey and Larry Page's The Anatomy of a Hypertextual Web Search Engine Describing Google's Early Architecture. |
Bitcoin |
Architecture |
Satoshi Nakomoto |
The White Paper that introduced Bitcoin to the world. |
CAP Theorem |
Reflections |
Eric Brewer |
Eric Brewer Reflecting on the CAP Theorem. |
Good Systems Blogs
All Things Distributed by Werner Vogels
High Scalability by Todd Hoff
On Digital Money by Ignacio Mas
Irrational Exuberance by Will Larson
Aggregated Resources
System Design Primer by Donne Martin (comprehensive guide)
Cracking the System Design Interview by Tian Pan (Good practical examples)
Videos
Whats App - A Reflection on Building Whats App Server
To Understand a new Systems Design Ask:
- What is it?
- Why was it invented?
- How does it work?