送书了 - 《数据密集型应用系统设计》
笔者最近从京东购买《数据密集型应用系统设计》,结果不小心多买了一本,因此考虑把它送给有缘人。为啥买这本书呢?因为笔者学完极客时间的《大数据经典论文解读》之后,发现最重要的还是分布式系统相关的知识,因此决定重拾一下经典书籍。
送书规则很简单:评论区点赞最高的一位童鞋,包邮!总数是一本。
DDIA 介绍
《数据密集型应用系统设计》,英文名称是《Designing Data-Intensive Application》 ,也被简称为 DDIA。这是一本神书,豆瓣评分高达 9.7 分。
什么是「数据密集型应用系统」?
当数据(数据量、数据复杂度、数据变化速度)是一个应用的主要挑战,那么可以把这个应用称为数据密集型的。与之相对的是计算密集型——处理器速度是主要瓶颈。
其实我们平时遇到的大部分系统都是数据密集型的——应用代码访问内存、硬盘、数据库、消息队列中的数据,经过业务逻辑处理,再返回给用户。
《数据密集型应用系统设计》这本书对与「数据」相关的知识点进行了深入剖析、整理和总结。它从宏观层面阐述了各项技术的共性与差异,并将底层原理讲解得透彻清晰。理解了这些原理后,我们就能明白每项技术的诞生背景、所要解决的问题以及适用场景。
这本书既有理论也有实践,基本没有公式,图很多,阅读起来很流畅,比较容易理解。
这本书分为了三部分:
• 第一部分:数据系统的基石,包括数据模型与查询语言、存储与检索、数据编码与演化; • 第二部分:分布式数据,包括复制、分片、事务、一致性与共识; • 第三部分:衍生数据,包括批处理、流处理、数据系统的未来。
目录
第一部分:数据系统基础
第一章:可靠性、可伸缩性和可维护性
第二章:数据模型与查询语言
第三章:存储与检索
第四章:编码与演化
第二部分:分布式数据
第五章:复制
第六章:分区
第七章:事务
第八章:分布式系统的麻烦
第九章:一致性与共识
第三部分:衍生数据
第十章:批处理
第十一章:流处理
第十二章:数据系统的未来阅读资源
• ddia-references: 这个仓库包含了《数据密集型应用系统设计》每章后面的所有参考文献对应的 pdf。地址是:https://github.com/ept/ddia-references。• MIT6.824: • Schedule: https://pdos.csail.mit.edu/6.824/schedule.html • 视频中文翻译版合集: https://www.bilibili.com/video/av91748150;• 中文课程地址: https://mit-public-courses-cn-translatio.gitbook.io/mit6-824/;