欢迎光临
免费的PDF电子书下载网站

数据密集型应用系统设计 PDF下载

编辑推荐

数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载数据密集型应用系统设计 PDF下载

每章都有一张思维导图,十二张思维导图助你理清学习本书的脉络。

深入探索常用分布式系统内部机制,学习如何高效运用这些技术。
分析各种工具的优势和不足,帮助做出明智的设计决策。
解析一致性、扩展性、容错和复杂度之间的权衡利弊。
介绍分布式系统研究的新进展(现代数据库的基石)。
揭示主流在线服务的基本架构。

 ;

内容简介

全书分为三大部分:
主要讨论有关增强数据密集型应用系统所需的若干基本原则。首先开篇第1章即瞄准目标:可靠性、可扩展性与可维护性,如何认识这些问题以及如何达成目标。第2章我们比较了多种不同的数据模型和查询语言,讨论各自的适用场景。接下来第3章主要针对存储引擎,即数据库是如何安排磁盘结构从而提高检索效率。第4章转向数据编码(序列化)方面,包括常见模式的演化历程。
我们将从单机的数据存储转向跨机器的分布式系统,这是扩展性的重要一步,但随之而来的是各种挑战。所以将依次讨论数据远程复制(第5章)、数据分区(第6章)以及事务(第7章)。接下来的第8章包括分布式系统的更多细节,以及分布式环境如何达成一致性与共识(第9章)。
主要针对产生派生数据的系统,所谓派生数据主要指在异构系统中,如果无法用一个数据源来解决所有问题,那么一种自然的方式就是集成多个不同的数据库、缓存模块以及索引模块等。首先第10章以批处理开始来处理派生数据,紧接着第11章采用流式处理。第12章总结之前介绍的多种技术,并分析讨论未来构建可靠、可扩展和可维护应用系统可能的新方向或方法。

作者简介

作者简介
Martin Kleppmann是英国剑桥大学分布式系统方向的研究员。此前,他曾是LinkedIn和Rapportive等互联网公司的软件工程师,负责大规模数据基础设施建设。在此过程中他遇到过一些困难,因此他希望这本书能够帮助读者避免重蹈覆辙。Martin还是一位活跃的会议演讲者、博主和开源贡献者。他认为,每个人都应该学习深刻的技术理念,对技术的深入理解能帮助我们开发出更好的软件。

译者简介

数据密集型应用系统设计 PDF下载

目录

前言 

1第一部分 数据系统基础
第1章 可靠、可扩展与可维护的应用系统
认识数据系统
可靠性
可扩展性
可维护性
小结
第2章 数据模型与查询语言
关系模型与文档模型 
数据查询语言
图状数据模型
小结
第3章 数据存储与检索
数据库核心:数据结构
事务处理与分析处理 
列式存储
小结
第4章 数据编码与演化
数据编码格式
数据流模式
小结
 
第二部分 分布式数据系统
第5章 数据复制
主节点与从节点 
复制滞后问题
多主节点复制 
无主节点复制
小结
第6章 数据分区
189数据分区与数据复制
键-值数据的分区
分区与二级索引
分区再平衡
请求路由 
小结
第7章 事务
深入理解事务
弱隔离级别
串行化 
小结
第8章 分布式系统的挑战
故障与部分失效
不可靠的网络
不可靠的时钟
知识,真相与谎言 
小结
第9章 一致性与共识
一致性保证
可线性化
顺序保证
分布式事务与共识
小结
第三部分 派生数据第
10章 批处理系统
使用UNIX工具进行批处理
MapReduce与分布式文件系统
超越MapReduce
小结
第11章 流处理系统
发送事件流
数据库与流
流处理
小结
第12章 数据系统的未来
461数据集成
分拆数据库
端到端的正确性 
做正确的事情 
小结
术语表
1第一部分 数据系统基础

媒体评论

“这本书非常棒!它弥补了分布式理论和工程实践之间的鸿沟。我多么希望十年前它就能面市,这样我可以早点读到,从而避免这一路犯下的许多错误。”

                                                                                          ——Jay KrepsApache Kafka的创造者,Confluent CEO

 

“本书应该是软件开发者的必读书籍。很少有这样的书籍可以如此完美地衔接理论与实践,对于那些设计和实现基础数据架构的开发者而言,它可以帮你做出睿智的决定。”

                                                                                                                                                       ——Kevin Scott

前沿

如果你是一位软件行业从业者,尤其是从事服务器端或者后台系统软件开发,相信近年来一定被层出不穷的商业名词所包围:NoSQL、Big Data、Web-scale、Sharding、Eventual consistency、ACID、CAP理论、云服务、MapReduce和Real-time等,所有这些其实都围绕着如何构建高效存储与数据处理这一核心主题。
过去十年,在数据库领域与分布式系统方面涌现了许多引人瞩目的进展,由此深刻地影响了如何构建上层应用系统。分析这些激动人心的变化背后,你会发现有以下几个非常重要的驱动因素:
互联网公司,包括Google、Yahoo! 、Amazon、Facebook、LinkedIn、Microsoft,以及Twitter等,它们每天都在面对海量数据和负载,迫使其不断创新,并改进支撑系统以更有效地处理这种量级的数据。
商业方面因素,如敏捷开发、测试驱动和对市场机会做出快速反应等,都要求尽量缩短产品开发周期,因此系统中的数据模型也要足够灵活以方便调整。 免费及开源软件现在已经非常成功,在很多领域足以取代商业或者定制软件。

数据密集型应用系统设计 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:数据密集型应用系统设计