Real world architectures

Articles on how real world systems are designed.


Source: Twitter timelines at scale

Don't focus on nitty gritty details for the following articles, instead:

  • Identify shared principles, common technologies, and patterns within these articles
  • Study what problems are solved by each component, where it works, where it doesn't
  • Review the lessons learned
TypeSystemReference(s)
Data processingMapReduce - Distributed data processing from Googleresearch.google.com
Data processingSpark - Distributed data processing from Databricksslideshare.net
Data processingStorm - Distributed data processing from Twitterslideshare.net
Data storeBigtable - Distributed column-oriented database from Googleharvard.edu
Data storeHBase - Open source implementation of Bigtableslideshare.net
Data storeCassandra - Distributed column-oriented database from Facebookslideshare.net
Data storeDynamoDB - Document-oriented database from Amazonharvard.edu
Data storeMongoDB - Document-oriented databaseslideshare.net
Data storeSpanner - Globally-distributed database from Googleresearch.google.com
Data storeMemcached - Distributed memory caching systemslideshare.net
Data storeRedis - Distributed memory caching system with persistence and value typesslideshare.net
File systemGoogle File System (GFS) - Distributed file systemresearch.google.com
File systemHadoop File System (HDFS) - Open source implementation of GFSapache.org
MiscChubby - Lock service for loosely-coupled distributed systems from Googleresearch.google.com
MiscDapper - Distributed systems tracing infrastructureresearch.google.com
MiscKafka - Pub/sub message queue from LinkedInslideshare.net
MiscZookeeper - Centralized infrastructure and services enabling synchronizationslideshare.net
Add an architectureContribute