《数据密集型应用系统设计》[49M]百度网盘|pdf下载|亲测有效
📦 Download Book
- 分布式系统设计难题:帮助读者理解复制、分区、事务、共识等分布式核心机制,做出合理的技术选型与架构决策。
- 数据模型选择困惑:对比关系模型、文档模型、图模型等不同数据模型的适用场景,指导读者根据业务需求选择合适方案。
- 存储引擎原理不清:深入剖析B树、LSM树等存储引擎的磁盘结构与检索优化机制,让读者理解数据库底层运作方式。
- 一致性与扩展性权衡:解析一致性、扩展性、容错和复杂度之间的利弊取舍,帮助读者在系统设计中找到平衡点。
- 批处理与流处理架构:讲解派生数据系统的构建方法,包括批处理和流式处理的原理与实践,支撑异构系统集成。
- 后端工程师:需要设计大规模数据系统,理解分布式架构原理以提升系统可靠性和扩展性。
- 架构师:负责技术选型和架构决策,需要全面了解各类数据存储与处理技术的优劣。
- 数据库开发者:希望深入理解存储引擎、复制、分区等数据库内部机制,提升底层开发能力。
- 计算机专业研究生:学习分布式系统课程时需要一本衔接理论与工程实践的参考书。
- 按顺序阅读:三部分由浅入深,建议从第一部分基础概念开始,逐步过渡到分布式和派生数据系统。
- 重点研读第5-9章:分布式系统部分是全书核心,复制、分区、事务、共识等章节需反复阅读并做笔记。
- 结合思维导图:每章开头的思维导图帮助理清脉络,建议先看导图再深入正文,读完后回顾巩固。
- 对照实际系统:阅读时将书中理论与MySQL、Kafka、Cassandra等实际系统对照,加深理解。
- 参与讨论:加入读书小组或技术社区,针对一致性权衡等开放性问题进行讨论,拓展思路。
- 系统设计能力:掌握设计可靠、可扩展、可维护数据密集型应用的核心原则与方法论。
- 技术选型判断力:能够根据业务场景在多种数据模型、存储引擎和架构方案中做出明智决策。
- 分布式知识体系:建立涵盖复制、分区、事务、共识等完整分布式系统知识框架。
- 底层原理洞察:深入理解数据库存储引擎、数据编码、批流处理等底层技术运作机制。
- 架构权衡思维:学会在一致性、可用性、扩展性和复杂度之间进行合理的权衡取舍。
📖 Book Introduction
产品特色

编辑推荐
每章都有一张思维导图,十二张思维导图助你理清学习本书的脉络。
深入探索常用分布式系统内部机制,学习如何高效运用这些技术。
分析各种工具的优势和不足,帮助做出明智的设计决策。
解析一致性、扩展性、容错和复杂度之间的权衡利弊。
介绍分布式系统研究的新进展(现代数据库的基石)。
揭示主流在线服务的基本架构。
内容简介
全书分为三大部分:
第一部分,主要讨论有关增强数据密集型应用系统所需的若干基本原则。首先开篇第1章即瞄准目标:可靠性、可扩展性与可维护性,如何认识这些问题以及如何达成目标。第2章我们比较了多种不同的数据模型和查询语言,讨论各自的适用场景。接下来第3章主要针对存储引擎,即数据库是如何安排磁盘结构从而提高检索效率。第4章转向数据编码(序列化)方面,包括常见模式的演化历程。
第二部分,我们将从单机的数据存储转向跨机器的分布式系统,这是扩展性的重要一步,但随之而来的是各种挑战。所以将依次讨论数据远程复制(第5章)、数据分区(第6章)以及事务(第7章)。接下来的第8章包括分布式系统的更多细节,以及分布式环境如何达成一致性与共识(第9章)。
第三部分,主要针对产生派生数据的系统,所谓派生数据主要指在异构系统中,如果无法用一个数据源来解决所有问题,那么一种自然的方式就是集成多个不同的数据库、缓存模块以及索引模块等。首先第10章以批处理开始来处理派生数据,紧接着第11章采用流式处理。第12章总结之前介绍的多种技术,并分析讨论未来构建可靠、可扩展和可维护应用系统可能的新方向或方法。
作者简介
作者简介
Martin Kleppmann是英国剑桥大学分布式系统方向的研究员。此前,他曾是LinkedIn和Rapportive等互联网公司的软件工程师,负责大规模数据基础设施建设。在此过程中他遇到过一些困难,因此他希望这本书能够帮助读者避免重蹈覆辙。Martin还是一位活跃的会议演讲者、博主和开源贡献者。他认为,每个人都应该学习深刻的技术理念,对技术的深入理解能帮助我们开发出更好的软件。
译者简介
赵军平, 大数据存储与分析资深开发者与推广者(EMC 10余年),GPU异构计算的亲历者。中国计算机协会专家委员,DELL EMC资深架构师。12年系统研发、创新与团队管理经验,擅长数据存储与保护, 云计算与大数据实时分析,GPU异构加速优化等。相关领域已申请中、美技术专利100余项,并多次在SNIA,LinuxConf,Hadoop Summit, Nvidia GPU Tech Conf等做技术分享,持续关注数据密集和计算密集相关技术的演进、融合与赋能推广。
吕云松,北京大学计算机硕士,硕士及DELL EMC中国研究院实习期间专注于大数据实时流式处理相关的研究。现就职于华为2012中软院黎曼实验室,主要从事深度学习的研发。
耿煜,DELL EMC架构师兼GTM负责人,致力于推广企业级数字化转型方案。深耕分布式架构以及云计算12年,先后任职于ChinaCache,Sun Microsystems以及EMC等公司。
李三平,美国麻省大学计算机工程专业博士,DELL EMC中国研究院首席科学家,研究方向为机器学习、深度学习、智能运维、遥感影像等。已在IEEE Transactions期刊和会议上发表论文数十篇,申请美国专利20余项。推崇简约,热衷机器学习。
精彩书评
“这本书非常棒!它弥补了分布式理论和工程实践之间的鸿沟。我多么希望十年前它就能面市,这样我可以早点读到,从而避免这一路犯下的许多错误。”
——Jay Kreps
Apache Kafka的创造者,
Confluent CEO
“本书应该是软件开发者的必读书籍。很少有这样的书籍可以如此完美地衔接理论与实践,对于那些设计和实现基础数据架构的开发者而言,它可以帮你做出睿智的决定。”
——Kevin Scott
📑 Table of Contents
- 可靠、可扩展与可维护的应用系统
- 数据模型与查询语言
- 存储与检索
- 编码与演化
- 数据复制
- 数据分区
- 事务
- 分布式系统的麻烦
- 一致性与共识
- 批处理
- 流处理
- 数据系统的未来