数据系统基础

可靠、可扩展与可维护的应用系统

数据模型与查询语言

数据存储与检索

数据编码与演化

分布式数据系统

目的:扩展性、容错和高可用、延迟考虑(多机房)

扩展:

  • 垂直扩展:提升单机性能
  • 水平扩展:无共享结构,由软件实现核心逻辑

复制与分区:

  • 复制:多节点冗余
  • 分区:数据库拆分
  • 分片:分区分配给不同的节点

数据复制

数据分区

事务

分布式系统挑战

一致性与共识

派生数据

  • 记录系统:真实数据系统,拥有数据的权威版本。
  • 派生数据系统:从另一个数据系统获取,丢失可以根据数据源重建,如缓存等。

批处理系统

流处理系统