2
0
Fork 0
mirror of https://github.com/Vonng/ddia.git synced 2026-06-21 08:56:57 +08:00
ddia/content/zh/toc.md
2025-08-10 16:45:07 +08:00

539 lines
30 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: "目录"
linkTitle: "目录"
weight: 10
breadcrumbs: false
---
![](/title.jpg)
## [序言](/preface)
- [本书的目标读者](/preface#本书的目标读者)
- [本书涉及的领域](/preface#本书涉及的领域)
- [本书纲要](/preface#本书纲要)
- [参考文献与延伸阅读](/preface#参考文献与延伸阅读)
- [OReilly Safari](/preface#oreilly-safari)
- [致谢](/preface#致谢)
## [1. 数据系统架构中的权衡](/ch1)
- [分析型与事务型系统](/ch1#sec_introduction_analytics)
- [事务处理与分析的特征](/ch1#sec_introduction_oltp)
- [数据仓库](/ch1#sec_introduction_dwh)
- [从数据仓库到数据湖](/ch1#from-data-warehouse-to-data-lake)
- [超越数据湖](/ch1#beyond-the-data-lake)
- [权威数据源与派生数据](/ch1#sec_introduction_derived)
- [云服务与自托管](/ch1#sec_introduction_cloud)
- [云服务的利弊](/ch1#sec_introduction_cloud_tradeoffs)
- [云原生系统架构](/ch1#sec_introduction_cloud_native)
- [云服务的分层](/ch1#layering-of-cloud-services)
- [存储与计算的分离](/ch1#sec_introduction_storage_compute)
- [云时代的运维](/ch1#sec_introduction_operations)
- [分布式与单节点系统](/ch1#sec_introduction_distributed)
- [分布式系统的问题](/ch1#sec_introduction_dist_sys_problems)
- [微服务与 Serverless](/ch1#sec_introduction_microservices)
- [云计算与超级计算](/ch1#id17)
- [数据系统、法律与社会](/ch1#sec_introduction_compliance)
- [总结](/ch1#summary)
- [参考](/ch1#参考)
## [2. 定义非功能性需求](/ch2)
- [案例研究:社交网络首页时间线](/ch2#sec_introduction_twitter)
- [表示用户、帖子与关注关系](/ch2#id20)
- [时间线的物化与更新](/ch2#sec_introduction_materializing)
- [描述性能](/ch2#sec_introduction_percentiles)
- [延迟与响应时间](/ch2#id23)
- [平均值、中位数与百分位数](/ch2#id24)
- [响应时间指标的应用](/ch2#sec_introduction_slo_sla)
- [可靠性与容错](/ch2#sec_introduction_reliability)
- [容错](/ch2#id27)
- [硬件与软件故障](/ch2#sec_introduction_hardware_faults)
- [通过冗余容忍硬件故障](/ch2#tolerating-hardware-faults-through-redundancy)
- [软件故障](/ch2#software-faults)
- [人类与可靠性](/ch2#id31)
- [可伸缩性](/ch2#sec_introduction_scalability)
- [描述负载](/ch2#id33)
- [共享内存、共享磁盘与无共享架构](/ch2#sec_introduction_shared_nothing)
- [可伸缩性原则](/ch2#id35)
- [可运维性](/ch2#sec_introduction_maintainability)
- [可运维性:让运维更轻松](/ch2#id37)
- [简单性:管理复杂度](/ch2#id38)
- [可演化性:让变化更容易](/ch2#sec_introduction_evolvability)
- [总结](/ch2#summary)
- [参考](/ch2#参考)
## [3. 数据模型与查询语言](/ch3)
- [关系模型与文档模型](/ch3#sec_datamodels_history)
- [对象关系不匹配](/ch3#sec_datamodels_document)
- [对象关系映射ORM](/ch3#object-relational-mapping-orm)
- [用于一对多关系的文档数据模型](/ch3#the-document-data-model-for-one-to-many-relationships)
- [规范化、反规范化与连接](/ch3#sec_datamodels_normalization)
- [规范化的权衡](/ch3#trade-offs-of-normalization)
- [社交网络案例研究中的反规范化](/ch3#denormalization-in-the-social-networking-case-study)
- [多对一与多对多关系](/ch3#sec_datamodels_many_to_many)
- [星型与雪花型:分析模式](/ch3#sec_datamodels_analytics)
- [何时使用哪种模型](/ch3#sec_datamodels_document_summary)
- [文档模型中的模式灵活性](/ch3#sec_datamodels_schema_flexibility)
- [读写的数据局部性](/ch3#sec_datamodels_document_locality)
- [文档的查询语言](/ch3#query-languages-for-documents)
- [文档和关系数据库的融合](/ch3#convergence-of-document-and-relational-databases)
- [图数据模型](/ch3#sec_datamodels_graph)
- [属性图](/ch3#id56)
- [Cypher 查询语言](/ch3#id57)
- [SQL 中的图查询](/ch3#id58)
- [三元组存储与 SPARQL](/ch3#id59)
- [RDF 数据模型](/ch3#the-rdf-data-model)
- [SPARQL 查询语言](/ch3#the-sparql-query-language)
- [Datalog递归关系查询](/ch3#id62)
- [GraphQL](/ch3#id63)
- [事件溯源与 CQRS](/ch3#sec_datamodels_events)
- [数据框、矩阵与数组](/ch3#sec_datamodels_dataframes)
- [总结](/ch3#summary)
- [参考](/ch3#参考)
## [4. 存储与检索](/ch4)
- [OLTP 系统的存储与索引](/ch4#sec_storage_oltp)
- [日志结构存储](/ch4#sec_storage_log_structured)
- [SSTable 文件格式](/ch4#the-sstable-file-format)
- [构建和合并 SSTable](/ch4#constructing-and-merging-sstables)
- [布隆过滤器](/ch4#bloom-filters)
- [压实策略](/ch4#sec_storage_lsm_compaction)
- [B 树](/ch4#sec_storage_b_trees)
- [使 B 树可靠](/ch4#sec_storage_btree_wal)
- [B 树变体](/ch4#b-tree-variants)
- [比较 B 树与 LSM 树](/ch4#sec_storage_btree_lsm_comparison)
- [读取性能](/ch4#read-performance)
- [顺序与随机写入](/ch4#sidebar_sequential)
- [写放大](/ch4#write-amplification)
- [磁盘空间使用](/ch4#disk-space-usage)
- [多列索引与二级索引](/ch4#sec_storage_index_multicolumn)
- [在索引中存储值](/ch4#sec_storage_index_heap)
- [全内存存储](/ch4#sec_storage_inmemory)
- [分析型数据存储](/ch4#sec_storage_analytics)
- [云数据仓库](/ch4#sec_cloud_data_warehouses)
- [列式存储](/ch4#sec_storage_column)
- [列压缩](/ch4#sec_storage_column_compression)
- [列存储中的排序顺序](/ch4#sort-order-in-column-storage)
- [写入列式存储](/ch4#writing-to-column-oriented-storage)
- [查询执行:编译与向量化](/ch4#sec_storage_vectorized)
- [物化视图与多维数据集](/ch4#sec_storage_materialized_views)
- [多维索引与全文索引](/ch4#sec_storage_multidimensional)
- [全文检索](/ch4#sec_storage_full_text)
- [向量嵌入](/ch4#id92)
- [总结](/ch4#summary)
- [参考](/ch4#参考)
## [5. 编码与演化](/ch5)
- [编码数据的格式](/ch5#sec_encoding_formats)
- [特定语言的格式](/ch5#id96)
- [JSON、XML 及其二进制变体](/ch5#sec_encoding_json)
- [JSON 模式](/ch5#json-schema)
- [二进制编码](/ch5#binary-encoding)
- [Protocol Buffers](/ch5#sec_encoding_protobuf)
- [字段标签与模式演化](/ch5#field-tags-and-schema-evolution)
- [Avro](/ch5#sec_encoding_avro)
- [写入者模式与读取者模式](/ch5#the-writers-schema-and-the-readers-schema)
- [模式演化规则](/ch5#schema-evolution-rules)
- [但什么是写入者模式?](/ch5#but-what-is-the-writers-schema)
- [动态生成的模式](/ch5#dynamically-generated-schemas)
- [模式的优点](/ch5#sec_encoding_schemas)
- [数据流的模式](/ch5#sec_encoding_dataflow)
- [流经数据库的数据流](/ch5#sec_encoding_dataflow_db)
- [不同时间写入的不同值](/ch5#different-values-written-at-different-times)
- [归档存储](/ch5#archival-storage)
- [流经服务的数据流REST 与 RPC](/ch5#sec_encoding_dataflow_rpc)
- [Web 服务](/ch5#sec_web_services)
- [远程过程调用RPC的问题](/ch5#sec_problems_with_rpc)
- [负载均衡器、服务发现和服务网格](/ch5#sec_encoding_service_discovery)
- [RPC 的数据编码与演化](/ch5#data-encoding-and-evolution-for-rpc)
- [持久化执行与工作流](/ch5#sec_encoding_dataflow_workflows)
- [持久化执行](/ch5#durable-execution)
- [事件驱动的架构](/ch5#sec_encoding_dataflow_msg)
- [消息代理](/ch5#message-brokers)
- [分布式 actor 框架](/ch5#distributed-actor-frameworks)
- [总结](/ch5#summary)
- [参考](/ch5#参考)
## [6. 复制](/ch6)
- [单主复制](/ch6#sec_replication_leader)
- [同步复制与异步复制](/ch6#sec_replication_sync_async)
- [设置新的副本](/ch6#sec_replication_new_replica)
- [处理节点故障](/ch6#sec_replication_failover)
- [从节点故障:追赶恢复](/ch6#follower-failure-catch-up-recovery)
- [领导者故障:故障转移](/ch6#leader-failure-failover)
- [复制日志的实现](/ch6#sec_replication_implementation)
- [基于语句的复制](/ch6#statement-based-replication)
- [预写日志WAL传输](/ch6#write-ahead-log-wal-shipping)
- [逻辑(基于行)日志复制](/ch6#logical-row-based-log-replication)
- [复制延迟的问题](/ch6#sec_replication_lag)
- [读己之写](/ch6#sec_replication_ryw)
- [单调读](/ch6#sec_replication_monotonic_reads)
- [一致前缀读](/ch6#sec_replication_consistent_prefix)
- [复制延迟的解决方案](/ch6#id131)
- [多主复制](/ch6#sec_replication_multi_leader)
- [跨地域运行](/ch6#sec_replication_multi_dc)
- [多主复制拓扑](/ch6#sec_replication_topologies)
- [不同拓扑的问题](/ch6#problems-with-different-topologies)
- [同步引擎与本地优先软件](/ch6#sec_replication_offline_clients)
- [实时协作、离线优先和本地优先应用](/ch6#real-time-collaboration-offline-first-and-local-first-apps)
- [同步引擎的利弊](/ch6#pros-and-cons-of-sync-engines)
- [处理写入冲突](/ch6#sec_replication_write_conflicts)
- [冲突避免](/ch6#conflict-avoidance)
- [最后写入者胜(丢弃并发写入)](/ch6#sec_replication_lww)
- [手动冲突解决](/ch6#manual-conflict-resolution)
- [自动冲突解决](/ch6#automatic-conflict-resolution)
- [CRDT 与操作变换](/ch6#sec_replication_crdts)
- [什么是冲突?](/ch6#what-is-a-conflict)
- [无主复制](/ch6#sec_replication_leaderless)
- [当节点故障时写入数据库](/ch6#id287)
- [追赶错过的写入](/ch6#sec_replication_read_repair)
- [读写仲裁](/ch6#sec_replication_quorum_condition)
- [仲裁一致性的局限](/ch6#sec_replication_quorum_limitations)
- [监控陈旧性](/ch6#monitoring-staleness)
- [单主与无主复制的性能](/ch6#sec_replication_leaderless_perf)
- [多地区操作](/ch6#multi-region-operation)
- [检测并发写入](/ch6#sec_replication_concurrent)
- ["先发生"关系与并发](/ch6#sec_replication_happens_before)
- [捕获先发生关系](/ch6#capturing-the-happens-before-relationship)
- [版本向量](/ch6#version-vectors)
- [总结](/ch6#summary)
- [参考](/ch6#参考)
## [7. 分片](/ch7)
- [分片的利与弊](/ch7#sec_sharding_reasons)
- [面向多租户的分片](/ch7#sec_sharding_multitenancy)
- [键值数据的分片](/ch7#sec_sharding_key_value)
- [按键的范围分片](/ch7#sec_sharding_key_range)
- [重新平衡键范围分片数据](/ch7#rebalancing-key-range-sharded-data)
- [按键的哈希分片](/ch7#sec_sharding_hash)
- [哈希取模节点数](/ch7#hash-modulo-number-of-nodes)
- [固定数量的分片](/ch7#fixed-number-of-shards)
- [按哈希范围分片](/ch7#sharding-by-hash-range)
- [一致性哈希](/ch7#sec_sharding_consistent_hashing)
- [倾斜的工作负载与缓解热点](/ch7#sec_sharding_skew)
- [运维:自动/手动再均衡](/ch7#sec_sharding_operations)
- [请求路由](/ch7#sec_sharding_routing)
- [分片与二级索引](/ch7#sec_sharding_secondary_indexes)
- [本地二级索引](/ch7#id166)
- [全局二级索引](/ch7#id167)
- [总结](/ch7#summary)
- [References](/ch7#references)
## [8. 事务](/ch8)
- [事务到底是什么?](/ch8#sec_transactions_overview)
- [ACID 的含义](/ch8#sec_transactions_acid)
- [原子性](/ch8#sec_transactions_acid_atomicity)
- [一致性](/ch8#sec_transactions_acid_consistency)
- [隔离性](/ch8#sec_transactions_acid_isolation)
- [持久性](/ch8#durability)
- [单对象与多对象操作](/ch8#sec_transactions_multi_object)
- [单对象写入](/ch8#sec_transactions_single_object)
- [多对象事务的需求](/ch8#sec_transactions_need)
- [处理错误和中止](/ch8#handling-errors-and-aborts)
- [弱隔离级别](/ch8#sec_transactions_isolation_levels)
- [读已提交](/ch8#sec_transactions_read_committed)
- [没有脏读](/ch8#no-dirty-reads)
- [没有脏写](/ch8#sec_transactions_dirty_write)
- [实现读已提交](/ch8#sec_transactions_read_committed_impl)
- [快照隔离与可重复读](/ch8#sec_transactions_snapshot_isolation)
- [多版本并发控制MVCC](/ch8#sec_transactions_snapshot_impl)
- [观察一致快照的可见性规则](/ch8#sec_transactions_mvcc_visibility)
- [索引与快照隔离](/ch8#indexes-and-snapshot-isolation)
- [快照隔离、可重复读和命名混淆](/ch8#snapshot-isolation-repeatable-read-and-naming-confusion)
- [防止丢失更新](/ch8#sec_transactions_lost_update)
- [原子写操作](/ch8#atomic-write-operations)
- [显式锁定](/ch8#explicit-locking)
- [自动检测丢失的更新](/ch8#automatically-detecting-lost-updates)
- [条件写入(比较并设置)](/ch8#sec_transactions_compare_and_set)
- [冲突解决与复制](/ch8#conflict-resolution-and-replication)
- [写偏斜与幻读](/ch8#sec_transactions_write_skew)
- [描述写偏斜](/ch8#characterizing-write-skew)
- [更多写偏斜的例子](/ch8#more-examples-of-write-skew)
- [导致写偏斜的幻读](/ch8#sec_transactions_phantom)
- [物化冲突](/ch8#materializing-conflicts)
- [可串行化](/ch8#sec_transactions_serializability)
- [实际串行执行](/ch8#sec_transactions_serial)
- [将事务封装在存储过程中](/ch8#encapsulating-transactions-in-stored-procedures)
- [存储过程的利弊](/ch8#sec_transactions_stored_proc_tradeoffs)
- [分片](/ch8#sharding)
- [串行执行总结](/ch8#summary-of-serial-execution)
- [两阶段锁定2PL](/ch8#sec_transactions_2pl)
- [两阶段锁定的实现](/ch8#implementation-of-two-phase-locking)
- [两阶段锁定的性能](/ch8#performance-of-two-phase-locking)
- [谓词锁](/ch8#predicate-locks)
- [索引范围锁](/ch8#sec_transactions_2pl_range)
- [可串行化快照隔离SSI](/ch8#sec_transactions_ssi)
- [悲观并发控制与乐观并发控制](/ch8#pessimistic-versus-optimistic-concurrency-control)
- [基于过时前提的决策](/ch8#decisions-based-on-an-outdated-premise)
- [检测陈旧的 MVCC 读取](/ch8#detecting-stale-mvcc-reads)
- [检测影响先前读取的写入](/ch8#sec_detecting_writes_affect_reads)
- [可串行化快照隔离的性能](/ch8#performance-of-serializable-snapshot-isolation)
- [分布式事务](/ch8#sec_transactions_distributed)
- [两阶段提交2PC](/ch8#sec_transactions_2pc)
- [系统性的承诺](/ch8#a-system-of-promises)
- [协调器故障](/ch8#coordinator-failure)
- [三阶段提交](/ch8#three-phase-commit)
- [跨不同系统的分布式事务](/ch8#sec_transactions_xa)
- [精确一次消息处理](/ch8#sec_transactions_exactly_once)
- [XA 事务](/ch8#xa-transactions)
- [存疑时持有锁](/ch8#holding-locks-while-in-doubt)
- [从协调器故障中恢复](/ch8#recovering-from-coordinator-failure)
- [XA 事务的问题](/ch8#problems-with-xa-transactions)
- [数据库内部的分布式事务](/ch8#sec_transactions_internal)
- [再谈精确一次消息处理](/ch8#exactly-once-message-processing-revisited)
- [总结](/ch8#summary)
- [参考](/ch8#参考)
## [9. 分布式系统的麻烦](/ch9)
- [故障与部分失效](/ch9#sec_distributed_partial_failure)
- [不可靠的网络](/ch9#sec_distributed_networks)
- [TCP 的局限性](/ch9#sec_distributed_tcp)
- [网络故障的实践](/ch9#sec_distributed_network_faults)
- [检测故障](/ch9#id307)
- [超时和无界延迟](/ch9#sec_distributed_queueing)
- [网络拥塞和排队](/ch9#network-congestion-and-queueing)
- [同步与异步网络](/ch9#sec_distributed_sync_networks)
- [我们不能简单地使网络延迟可预测吗?](/ch9#can-we-not-simply-make-network-delays-predictable)
- [不可靠的时钟](/ch9#sec_distributed_clocks)
- [单调时钟与日历时钟](/ch9#sec_distributed_monotonic_timeofday)
- [日历时钟](/ch9#time-of-day-clocks)
- [单调时钟](/ch9#monotonic-clocks)
- [时钟同步和准确性](/ch9#sec_distributed_clock_accuracy)
- [对同步时钟的依赖](/ch9#sec_distributed_clocks_relying)
- [用于事件排序的时间戳](/ch9#sec_distributed_lww)
- [带置信区间的时钟读数](/ch9#clock-readings-with-a-confidence-interval)
- [用于全局快照的同步时钟](/ch9#sec_distributed_spanner)
- [进程暂停](/ch9#sec_distributed_clocks_pauses)
- [响应时间保证](/ch9#sec_distributed_clocks_realtime)
- [限制垃圾回收的影响](/ch9#sec_distributed_gc_impact)
- [知识、真相和谎言](/ch9#sec_distributed_truth)
- [多数派原则](/ch9#sec_distributed_majority)
- [分布式锁和租约](/ch9#sec_distributed_lock_fencing)
- [隔离僵尸进程和延迟请求](/ch9#sec_distributed_fencing_tokens)
- [多副本隔离](/ch9#fencing-with-multiple-replicas)
- [拜占庭故障](/ch9#sec_distributed_byzantine)
- [弱形式的谎言](/ch9#weak-forms-of-lying)
- [系统模型与现实](/ch9#sec_distributed_system_model)
- [定义算法的正确性](/ch9#defining-the-correctness-of-an-algorithm)
- [安全性与活性](/ch9#sec_distributed_safety_liveness)
- [将系统模型映射到现实世界](/ch9#mapping-system-models-to-the-real-world)
- [形式化方法和随机测试](/ch9#sec_distributed_formal)
- [模型检查与规范语言](/ch9#model-checking-and-specification-languages)
- [故障注入](/ch9#sec_fault_injection)
- [确定性模拟测试](/ch9#deterministic-simulation-testing)
- [总结](/ch9#summary)
- [参考](/ch9#参考)
## [10. 一致性与共识](/ch10)
- [线性一致性](/ch10#sec_consistency_linearizability)
- [什么使系统具有线性一致性?](/ch10#sec_consistency_lin_definition)
- [依赖线性一致性](/ch10#sec_consistency_linearizability_usage)
- [锁定与领导者选举](/ch10#locking-and-leader-election)
- [约束与唯一性保证](/ch10#sec_consistency_uniqueness)
- [跨通道时序依赖](/ch10#cross-channel-timing-dependencies)
- [实现线性一致性系统](/ch10#sec_consistency_implementing_linearizable)
- [线性一致性与仲裁](/ch10#sec_consistency_quorum_linearizable)
- [线性一致性的代价](/ch10#sec_linearizability_cost)
- [CAP 定理](/ch10#the-cap-theorem)
- [线性一致性与网络延迟](/ch10#linearizability-and-network-delays)
- [ID 生成器和逻辑时钟](/ch10#sec_consistency_logical)
- [逻辑时钟](/ch10#sec_consistency_timestamps)
- [Lamport 时间戳](/ch10#lamport-timestamps)
- [混合逻辑时钟](/ch10#hybrid-logical-clocks)
- [Lamport/混合逻辑时钟 vs. 向量时钟](/ch10#lamporthybrid-logical-clocks-vs-vector-clocks)
- [线性一致的 ID 生成器](/ch10#sec_consistency_linearizable_id)
- [实现线性一致的 ID 生成器](/ch10#implementing-a-linearizable-id-generator)
- [使用逻辑时钟强制约束](/ch10#enforcing-constraints-using-logical-clocks)
- [共识](/ch10#sec_consistency_consensus)
- [共识的多面性](/ch10#sec_consistency_faces)
- [单值共识](/ch10#single-value-consensus)
- [比较并设置作为共识](/ch10#compare-and-set-as-consensus)
- [共享日志作为共识](/ch10#sec_consistency_shared_logs)
- [获取并增加作为共识](/ch10#fetch-and-add-as-consensus)
- [原子提交作为共识](/ch10#atomic-commitment-as-consensus)
- [共识的实践](/ch10#sec_consistency_total_order)
- [使用共享日志](/ch10#sec_consistency_smr)
- [从单主复制到共识](/ch10#from-single-leader-replication-to-consensus)
- [共识的微妙之处](/ch10#subtleties-of-consensus)
- [共识的利弊](/ch10#pros-and-cons-of-consensus)
- [总结](/ch10#summary)
- [参考文献](/ch10#参考文献)
## [第十一章:批处理](/ch11)
- [使用Unix工具的批处理](/ch11#使用unix工具的批处理)
- [简单日志分析](/ch11#简单日志分析)
- [命令链与自定义程序](/ch11#命令链与自定义程序)
- [排序 VS 内存中的聚合](/ch11#排序-vs-内存中的聚合)
- [Unix哲学](/ch11#unix哲学)
- [统一的接口](/ch11#统一的接口)
- [逻辑与布线相分离](/ch11#逻辑与布线相分离)
- [透明度和实验](/ch11#透明度和实验)
- [MapReduce和分布式文件系统](/ch11#mapreduce和分布式文件系统)
- [MapReduce作业执行](/ch11#mapreduce作业执行)
- [分布式执行MapReduce](/ch11#分布式执行mapreduce)
- [MapReduce工作流](/ch11#mapreduce工作流)
- [Reduce侧连接与分组](/ch11#reduce侧连接与分组)
- [示例:用户活动事件分析](/ch11#示例用户活动事件分析)
- [排序合并连接](/ch11#排序合并连接)
- [把相关数据放在一起](/ch11#把相关数据放在一起)
- [分组](/ch11#分组)
- [处理偏斜](/ch11#处理偏斜)
- [Map侧连接](/ch11#map侧连接)
- [广播散列连接](/ch11#广播散列连接)
- [分区散列连接](/ch11#分区散列连接)
- [Map侧合并连接](/ch11#map侧合并连接)
- [MapReduce工作流与Map侧连接](/ch11#mapreduce工作流与map侧连接)
- [批处理工作流的输出](/ch11#批处理工作流的输出)
- [建立搜索索引](/ch11#建立搜索索引)
- [键值存储作为批处理输出](/ch11#键值存储作为批处理输出)
- [批处理输出的哲学](/ch11#批处理输出的哲学)
- [Hadoop与分布式数据库的对比](/ch11#hadoop与分布式数据库的对比)
- [存储多样性](/ch11#存储多样性)
- [处理模型的多样性](/ch11#处理模型的多样性)
- [针对频繁故障设计](/ch11#针对频繁故障设计)
- [MapReduce之后](/ch11#mapreduce之后)
- [物化中间状态](/ch11#物化中间状态)
- [数据流引擎](/ch11#数据流引擎)
- [容错](/ch11#容错)
- [关于物化的讨论](/ch11#关于物化的讨论)
- [图与迭代处理](/ch11#图与迭代处理)
- [Pregel处理模型](/ch11#pregel处理模型)
- [容错](/ch11#容错)
- [并行执行](/ch11#并行执行)
- [高级API和语言](/ch11#高级api和语言)
- [向声明式查询语言的转变](/ch11#向声明式查询语言的转变)
- [专业化的不同领域](/ch11#专业化的不同领域)
- [本章小结](/ch11#本章小结)
- [参考文献](/ch11#参考文献)
## [第十二章:流处理](/ch12)
- [传递事件流](/ch12#传递事件流)
- [消息传递系统](/ch12#消息传递系统)
- [直接从生产者传递给消费者](/ch12#直接从生产者传递给消费者)
- [消息代理](/ch12#消息代理)
- [消息代理与数据库的对比](/ch12#消息代理与数据库的对比)
- [多个消费者](/ch12#多个消费者)
- [确认与重新传递](/ch12#确认与重新传递)
- [分区日志](/ch12#分区日志)
- [使用日志进行消息存储](/ch12#使用日志进行消息存储)
- [日志与传统的消息传递相比](/ch12#日志与传统的消息传递相比)
- [消费者偏移量](/ch12#消费者偏移量)
- [磁盘空间使用](/ch12#磁盘空间使用)
- [当消费者跟不上生产者时](/ch12#当消费者跟不上生产者时)
- [重播旧消息](/ch12#重播旧消息)
- [数据库与流](/ch12#数据库与流)
- [保持系统同步](/ch12#保持系统同步)
- [变更数据捕获](/ch12#变更数据捕获)
- [变更数据捕获的实现](/ch12#变更数据捕获的实现)
- [初始快照](/ch12#初始快照)
- [日志压缩](/ch12#日志压缩)
- [变更流的API支持](/ch12#变更流的api支持)
- [事件溯源](/ch12#事件溯源)
- [从事件日志中派生出当前状态](/ch12#从事件日志中派生出当前状态)
- [命令和事件](/ch12#命令和事件)
- [状态、流和不变性](/ch12#状态流和不变性)
- [不可变事件的优点](/ch12#不可变事件的优点)
- [从同一事件日志中派生多个视图](/ch12#从同一事件日志中派生多个视图)
- [并发控制](/ch12#并发控制)
- [不变性的局限性](/ch12#不变性的局限性)
- [流处理](/ch12#流处理)
- [流处理的应用](/ch12#流处理的应用)
- [复合事件处理](/ch12#复合事件处理)
- [流分析](/ch12#流分析)
- [维护物化视图](/ch12#维护物化视图)
- [在流上搜索](/ch12#在流上搜索)
- [消息传递和RPC](/ch12#消息传递和rpc)
- [时间推理](/ch12#时间推理)
- [事件时间与处理时间](/ch12#事件时间与处理时间)
- [知道什么时候准备好了](/ch12#知道什么时候准备好了)
- [你用的是谁的时钟?](/ch12#你用的是谁的时钟)
- [窗口的类型](/ch12#窗口的类型)
- [流连接](/ch12#流连接)
- [流流连接(窗口连接)](/ch12#流流连接窗口连接)
- [流表连接(流扩充)](/ch12#流表连接流扩充)
- [表表连接(维护物化视图)](/ch12#表表连接维护物化视图)
- [连接的时间依赖性](/ch12#连接的时间依赖性)
- [容错](/ch12#容错)
- [微批量与存档点](/ch12#微批量与存档点)
- [原子提交再现](/ch12#原子提交再现)
- [幂等性](/ch12#幂等性)
- [失败后重建状态](/ch12#失败后重建状态)
- [本章小结](/ch12#本章小结)
- [参考文献](/ch12#参考文献)
## [第十三章:数据系统的未来](/ch13)
- [数据集成](/ch13#数据集成)
- [组合使用派生数据的工具](/ch13#组合使用派生数据的工具)
- [理解数据流](/ch13#理解数据流)
- [派生数据与分布式事务](/ch13#派生数据与分布式事务)
- [全序的限制](/ch13#全序的限制)
- [排序事件以捕获因果关系](/ch13#排序事件以捕获因果关系)
- [批处理与流处理](/ch13#批处理与流处理)
- [维护衍生状态](/ch13#维护衍生状态)
- [应用演化后重新处理数据](/ch13#应用演化后重新处理数据)
- [Lambda架构](/ch13#lambda架构)
- [统一批处理和流处理](/ch13#统一批处理和流处理)
- [分拆数据库](/ch13#分拆数据库)
- [组合使用数据存储技术](/ch13#组合使用数据存储技术)
- [创建索引](/ch13#创建索引)
- [一切的元数据库](/ch13#一切的元数据库)
- [开展分拆工作](/ch13#开展分拆工作)
- [分拆系统vs集成系统](/ch13#分拆系统vs集成系统)
- [少了什么?](/ch13#少了什么)
- [围绕数据流设计应用](/ch13#围绕数据流设计应用)
- [应用代码作为衍生函数](/ch13#应用代码作为衍生函数)
- [应用代码和状态的分离](/ch13#应用代码和状态的分离)
- [数据流:应用代码与状态变化的交互](/ch13#数据流应用代码与状态变化的交互)
- [流处理器和服务](/ch13#流处理器和服务)
- [观察派生数据状态](/ch13#观察派生数据状态)
- [物化视图和缓存](/ch13#物化视图和缓存)
- [有状态、可离线的客户端](/ch13#有状态可离线的客户端)
- [将状态变更推送给客户端](/ch13#将状态变更推送给客户端)
- [端到端的事件流](/ch13#端到端的事件流)
- [读也是事件](/ch13#读也是事件)
- [多分区数据处理](/ch13#多分区数据处理)
- [将事情做正确](/ch13#将事情做正确)
- [数据库的端到端原则](/ch13#数据库的端到端原则)
- [正好执行一次操作](/ch13#正好执行一次操作)
- [抑制重复](/ch13#抑制重复)
- [操作标识符](/ch13#操作标识符)
- [端到端原则](/ch13#端到端原则)
- [在数据系统中应用端到端思考](/ch13#在数据系统中应用端到端思考)
- [强制约束](/ch13#强制约束)
- [唯一性约束需要达成共识](/ch13#唯一性约束需要达成共识)
- [基于日志消息传递中的唯一性](/ch13#基于日志消息传递中的唯一性)
- [多分区请求处理](/ch13#多分区请求处理)
- [及时性与完整性](/ch13#及时性与完整性)
- [数据流系统的正确性](/ch13#数据流系统的正确性)
- [宽松地解释约束](/ch13#宽松地解释约束)
- [无协调数据系统](/ch13#无协调数据系统)
- [信任但验证](/ch13#信任但验证)
- [维护完整性尽管软件有Bug](/ch13#维护完整性尽管软件有bug)
- [不要盲目信任承诺](/ch13#不要盲目信任承诺)
- [验证的文化](/ch13#验证的文化)
- [为可审计性而设计](/ch13#为可审计性而设计)
- [端到端原则重现](/ch13#端到端原则重现)
- [用于可审计数据系统的工具](/ch13#用于可审计数据系统的工具)
- [做正确的事情](/ch13#做正确的事情)
- [预测性分析](/ch13#预测性分析)
- [偏见与歧视](/ch13#偏见与歧视)
- [责任与问责](/ch13#责任与问责)
- [反馈循环](/ch13#反馈循环)
- [隐私和追踪](/ch13#隐私和追踪)
- [监视](/ch13#监视)
- [同意与选择的自由](/ch13#同意与选择的自由)
- [隐私与数据使用](/ch13#隐私与数据使用)
- [数据资产与权力](/ch13#数据资产与权力)
- [回顾工业革命](/ch13#回顾工业革命)
- [立法与自律](/ch13#立法与自律)
- [本章小结](/ch13#本章小结)
- [参考文献](/ch13#参考文献)
## [术语表](/glossary)
## [后记](/colophon)
- [关于作者](/colophon#关于作者)
- [关于译者](/colophon#关于译者)
- [后记](/colophon#后记)