Designing Data-Intensive Application Personal booknotes of Designing Data-Intensive Application. Chapters Reliable, Scalable, and Maintainable Applications Data Models and Query Language Storage and Retrieval Encoding and Evolution Replication Partitioning Transactions The Trouble with Distributed System Consistency and Consensus Batch Processing Stream Processing