Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
notes
An engaging high-level tour of typical problems, solutions, and the associated trade-offs that occur any system that writes, reads, updates, and deletes data. Reads a bit like an almanac of software patterns and specific implementations used in practice, which I found very enjoyable. Covers a wide range of topics, including storage and retrieval, OLTP and OLAP, replication and partitioning, distributed transactions, 2PC, consistency and consensus, and batch and stream processing. An ideal introduction to common database patterns and distributed systems.
also in this thread
- Working in PublicNadia Eghbal¶
- Lost and Founder: A Painfully Honest Field Guide to the Startup WorldRand Fishkin¶
- Monolith to MicroservicesSam Newman¶
posts nearby
- Practice and VisionOct 11, 2026
- Testing and EpistemologyDec 19, 2021