60 张卡片

数据密集型应用系统设计

精选

沿“单机存储引擎 → 复制 → 分区 → 事务 → 不可靠网络与时钟 → 一致性与共识 → 批处理与流处理”的演进主线,理解每个数据组件背后的原理与权衡。来源:《数据密集型应用系统设计》(Martin Kleppmann,中国电力出版社)。

60 张卡片/2026/9/8 发布
加载中…

主要解决什么问题

  • 用过 MySQL、Redis、Kafka、Elasticsearch,但说不清它们背后的复制、分区、存储引擎原理,选型只能跟风。
  • 被最终一致性、CAP、隔离级别这些词困扰多年,遇到线上脑裂、丢写、幻读类问题时无法定位属于哪一层。
  • 读过 DDIA 但合上书就忘:概念彼此孤立,串不起“单机到分布式”的演进逻辑,也无法落到自己业务的工程判断上。

值得掌握的核心知识

  • 沿单机存储引擎、复制、分区、事务、不可靠网络与时钟、一致性与共识、批处理与流处理这条演进主线,说清每一步的动机与代价。
  • 区分脏读、读倾斜、更新丢失、写倾斜、幻读五类并发异常,说清读提交、快照隔离与可串行化各自的边界,能按业务选择隔离级别。
  • 说清线性化与可串行化的差别、CAP 的正确理解、2PC 为什么阻塞,以及共识算法如何用 epoch 与 quorum 防脑裂。
  • 解释 LSM-tree 与 B-tree 的写读权衡、列存储为什么适合分析,能为给定负载选择存储引擎。
  • 区分事件时间与处理时间,理解变更数据捕获、恰好一次语义与端到端请求 ID 幂等的实现思路。

卡片

展示 20 张 / 共 60 张