目录

  1. 简介 1.1
  2. 序言 1.2
  3. 第一部分:数据系统的基石 1.3
    1. 第一章:可靠性、可伸缩性、可维护性 1.3.1
      1. 关于数据系统的思考 1.3.1.1
      2. 可靠性 1.3.1.2
      3. 可伸缩性 1.3.1.3
      4. 可维护性 1.3.1.4
      5. 本章小结 1.3.1.5
    2. 第二章:数据模型与查询语言 1.3.2
      1. 关系模型与文档模型 1.3.2.1
      2. 数据查询语言 1.3.2.2
      3. 图数据模型 1.3.2.3
      4. 本章小结 1.3.2.4
    3. 第三章:存储与检索 1.3.3
      1. 驱动数据库的数据结构 1.3.3.1
      2. 事务处理还是分析? 1.3.3.2
      3. 列存储 1.3.3.3
      4. 本章小结 1.3.3.4
    4. 第四章:编码与演化 1.3.4
      1. 编码数据的格式 1.3.4.1
      2. 数据流的类型 1.3.4.2
      3. 本章小结 1.3.4.3
  4. 第二部分:分布式数据 1.4
    1. 第五章:复制 1.4.1
      1. 领导者与追随者 1.4.1.1
      2. 复制延迟问题 1.4.1.2
      3. 多主复制 1.4.1.3
      4. 无主复制 1.4.1.4
      5. 本章小结 1.4.1.5
    2. 第六章:分区 1.4.2
      1. 分区与复制 1.4.2.1
      2. 键值数据的分区 1.4.2.2
      3. 分区与次级索引 1.4.2.3
      4. 分区再平衡 1.4.2.4
      5. 请求路由 1.4.2.5
      6. 本章小结 1.4.2.6
    3. 第七章:事务 1.4.3
      1. 事务的棘手概念 1.4.3.1
      2. 弱隔离级别 1.4.3.2
      3. 可串行化 1.4.3.3
      4. 本章小结 1.4.3.4
    4. 第八章:分布式系统的麻烦 1.4.4
      1. 故障与部分失效 1.4.4.1
      2. 不可靠的网络 1.4.4.2
      3. 不可靠的时钟 1.4.4.3
      4. 知识、真相与谎言 1.4.4.4
      5. 本章小结 1.4.4.5
    5. 第九章:一致性与共识 1.4.5
      1. 一致性保证 1.4.5.1
      2. 线性一致性 1.4.5.2
      3. 顺序保证 1.4.5.3
      4. 分布式事务与共识 1.4.5.4
      5. 本章小结 1.4.5.5
  5. 第三部分:衍生数据 1.5
    1. 第十章:批处理 1.5.1
      1. 使用Unix工具的批处理 1.5.1.1
      2. MapReduce和分布式文件系统 1.5.1.2
      3. MapReduce之后 1.5.1.3
      4. 本章小结 1.5.1.4
    2. 第十一章:流处理 1.5.2
      1. 传递事件流 1.5.2.1
      2. 数据库与流 1.5.2.2
      3. 流处理 1.5.2.3
      4. 本章小结 1.5.2.4
    3. 第十二章:数据系统的未来 1.5.3
      1. 数据集成 1.5.3.1
      2. 分拆数据库 1.5.3.2
      3. 将事情做正确 1.5.3.3
      4. 做正确的事情 1.5.3.4
      5. 本章小结 1.5.3.5
  6. 术语表 1.6
  7. 后记 1.7