Resources for building databases and data processing systems
This post collects a few resources related to databases and designing data-processing systems that I found myself sharing with others regularly.
On structuring and processing data:
- “Designing Data-Intensive Applications” by Martin Kleppmann: https://www.oreilly.com/library/view/designing-data-intensive-applications/9781491903063/
- “Big Data: Principles and best practices of scalable realtime data systems” by Nathan Marz and James Warren: https://www.manning.com/books/big-data
On relational database indexing:
- “Use the Index, Luke” by Markus Winand: https://use-the-index-luke.com/
- “B-trees and database indexes” by Benjamin Dicken: https://planetscale.com/blog/btrees-and-database-indexes
On consistency models: Jepsen’s “Consistency Models”: https://jepsen.io/consistency
Marz and Warren’s Big Data book was my introduction to big data, and its Lambda Architecture had a huge impact on me.
For other learning resources, see Useful Links. For a less discriminate list of resources, see my link dump.