mirror of
https://github.com/Vonng/ddia.git
synced 2025-09-26 23:09:18 +08:00
24 KiB
24 KiB
title | linkTitle | weight | breadcrumbs |
---|---|---|---|
Table of Content | Table of Content | 10 | false |
Preface
- Who Should Read This Book?
- Scope of This Book
- Outline of This Book
- References and Further Reading
- O'Reilly Safari
- How to Contact Us
- Acknowledgments
1. Trade-offs in Data Systems Architecture
- Analytical versus Operational Systems
- Cloud versus Self-Hosting
- Distributed versus Single-Node Systems
- Data Systems, Law, and Society
- Summary
2. Defining Nonfunctional Requirements
- Case Study: Social Network Home Timelines
- Describing Performance
- Reliability and Fault Tolerance
- Scalability
- Maintainability
- Summary
3. Data Models and Query Languages
- Relational Model versus Document Model
- Graph-Like Data Models
- Event Sourcing and CQRS
- Dataframes, Matrices, and Arrays
- Summary
4. Storage and Retrieval
- Storage and Indexing for OLTP
- Data Storage for Analytics
- Multidimensional and Full-Text Indexes
- Summary
5. Encoding and Evolution
- Formats for Encoding Data
- Modes of Dataflow
- Summary
6. Replication
- Single-Leader Replication
- Problems with Replication Lag
- Multi-Leader Replication
- Leaderless Replication
- Summary
7. Sharding
- Pros and Cons of Sharding
- Sharding of Key-Value Data
- Request Routing
- Sharding and Secondary Indexes
- Summary
8. Transactions
- What Exactly Is a Transaction?
- Weak Isolation Levels
- Serializability
- Distributed Transactions
- Summary
9. The Trouble with Distributed Systems
- Faults and Partial Failures
- Unreliable Networks
- Unreliable Clocks
- Knowledge, Truth, and Lies
- Summary
10. Consistency and Consensus
- Linearizability
- ID Generators and Logical Clocks
- Consensus
- Summary