| .. | ||
| _navbar.md | ||
| _sidebar.md | ||
| ch1.md | ||
| ch2.md | ||
| ch3.md | ||
| ch4.md | ||
| ch5.md | ||
| ch6.md | ||
| ch7.md | ||
| ch8.md | ||
| ch9.md | ||
| ch10.md | ||
| ch11.md | ||
| ch12.md | ||
| ch13.md | ||
| colophon.md | ||
| glossary.md | ||
| part-i.md | ||
| part-ii.md | ||
| part-iii.md | ||
| preface.md | ||
| README.md | ||
| SUMMARY.md | ||
Designing Data-Intensive Applications
—— The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
The en-us version only includes intro, summary, references of all chapters to protect the intellectual property of author and publisher.
Technology is a powerful force in our society. Data, software, and communication can
be used for bad: to entrench unfair power structures, to undermine human rights, and to protect vested interests. But they can also be used for good: to make underrepresented people’s voices heard, to create opportunities for everyone, and to avert disasters. This book is dedicated to everyone working toward the good.
Computing is pop culture. [...] Pop culture holds a disdain for history. Pop culture is all about identity and feeling like you’re participating. It has nothing to do with cooperation, the past or the future—it’s living in the present. I think the same is true of most people who write code for money. They have no idea where [their culture came from].
— Alan Kay, in interview with Dr Dobb’s Journal (2012)
Table of Contents
Preface
Part I: Foundations of Data Systems
- 1. Trade-offs in Data Systems Architecture
- 2. Defining Nonfunctional Requirements
- 3. Data Models and Query Languages
- 4. Storage and Retrieval
- 5. Encoding and Evolution
Part II: Distributed Data
- 6. Replication
- 7. Partitioning
- 8. Transactions
- 9. The Trouble with Distributed Systems
- 10. Consistency and Consensus