+关注

NoSQL精粹-中文完整版 pdf


QQ图片20141212161329.jpg


编辑推荐
世界级软件开发大师和软件开发“教父”Martin Fowler与Jolt生产效率大奖图书作者Pramod J. Sadalage最新力作,权威性毋庸置疑
全方位比较关系型数据库与NoSQL数据库的异同,详细讲解4大主流NoSQL数据库的优劣势、用法和适用场合,深入探讨实现NoSQL数据库系统的各种细节
作者简介
Pramod J. Sadalage 先生是ThoughtWorks公司首席顾问,致力于消弭数据库专业人员与应用程序开发者之间的鸿沟,他在这一鲜有人问津的领域中独享其乐。Sadalage先生经常接受客户咨询,为他们所面临的那些依赖新工艺、新科技,且极有挑战性的数据需求出谋划策。他研发出一项前沿技术,以受版本控制的数据迁移操作渐进地设计关系型数据库。Sadalage先生与Scott Ambler先生合著的《数据库重构》一书荣获2007年Jolt生产效率大奖。
Martin Fowler 世界级软件开发大师,软件开发“教父”,敏捷开发方法的创始人之一,在面向对象分析与设计、UML、模式、极限编程、重构和DSL等领域都有非常深入的研究,并为软件开发行业做出了卓越贡献。他乐于分享,撰写了《企业应用架构模式》(荣获2003年Jolt生产效率大奖)、《重构:改善既有代码的设计》、《分析模式:可复用的对象模型》、《UML精粹:标准对象建模语言简明指南》、《领域特定语言》等在软件开发领域颇负盛名的著作。
译者简介
爱飞翔  资深软件开发工程师,擅长Web开发、移动开发和游戏开发,有10余年开发经验,曾主导和参与了多个手机游戏和手机软件项目的开发,经验十分丰富。他是手机软件开发引擎AgileMobileEngine的创始人兼项目经理,同时也是CatEngine手机游戏开发引擎的联合创始人兼代码维护员。他对极限编程、设计模式、重构、测试驱动开发、敏捷软件开发等也有较深入的研究,目前负责敏捷移动开发网(http://www.agilemobidev.com/)的运营。业余爱好文学和历史,有一定的文学造诣。翻译并出版了《Android游戏开发实践指南》、《测试驱动的iOS开发》、《HTML5 Canvas核心技术:图形、动画与游戏开发》和《JavaScript应用开发实践指南》等书。
目录
译者序
前言
第一部分 概念
第1章 为什么使用NoSQL2
1.1 关系型数据库的价值3
1.1.1 获取持久化数据3
1.1.2 并发3
1.1.3 集成4
1.1.4 近乎标准的模型4
1.2 阻抗失谐4
1.3 “应用程序数据库”与“集成数据库”6
1.4 蜂拥而来的集群8
1.5 NoSQL登场9
1.6 要点13
第2章 聚合数据模型15
2.1 聚合16
2.1.1 关系模型与聚合模型示例16
2.1.2 面向聚合的影响20
2.2 键值数据模型与文档数据模型22
2.3 列族存储23
2.4 面向聚合数据库总结25
2.5 延伸阅读26
2.6 要点26
第3章 数据模型详解27
3.1 关系28
3.2 图数据库29
3.3 无模式数据库31
3.4 物化视图33
3.5 构建数据存取模型34
3.6 要点39
第4章 分布式模型40
4.1 单一服务器41
4.2 分片41
4.3 主从复制43
4.4 对等复制45
4.5 结合“分片”与“复制”技术47
4.6 要点48
第5章 一致性49
5.1 更新一致性50
5.2 读取一致性51
5.3 放宽“一致性”约束55
5.4 放宽“持久性”约束60
5.5 仲裁62
5.6 延伸阅读63
5.7 要点64
第6章 版本戳65
6.1 “商业事务”与“系统事务”66
6.2 在多节点环境中生成版本戳68
6.3 要点70
第7章 映射—化简71
7.1 基本“映射—化简”72
7.2 分区与归并73
7.3 组合“映射—化简”计算76
7.3.1 举例说明两阶段“映射—化简”77
7.3.2 增量式“映射—化简”80
7.4 延伸阅读81
7.5 要点81
第二部分 实现
第8章 键值数据库84
8.1 何谓“键值数据库”85
8.2 键值数据库特性86
8.2.1 一致性86
8.2.2 事务87
8.2.3 查询功能87
8.2.4 数据结构89
8.2.5 可扩展性89
8.3 适用案例90
8.3.1 存放会话信息90
8.3.2 用户配置信息90
8.3.3 购物车数据90
8.4 不适用场合90
8.4.1 数据间关系90
8.4.2 含有多项操作的事务91
8.4.3 查询数据91
8.4.4 操作关键字集合91
第9章 文档数据库92
9.1 何谓文档数据库93
9.2 特性94
9.2.1 一致性94
9.2.2 事务95
9.2.3 可用性96
9.2.4 查询功能97
9.2.5 可扩展性99
9.3 适用案例100
9.3.1 事件记录100
9.3.2 内容管理系统及博客平台101
9.3.3 网站分析与实时分析101
9.3.4 电子商务应用程序101
9.4 不适用场合101
9.4.1 包含多项操作的复杂事务101
9.4.2 查询持续变化的聚合结构101
第10章 列族数据库102
10.1 何谓列族数据库103
10.2 特性103
10.2.1 一致性105
10.2.2 事务107
10.2.3 可用性107
10.2.4 查询功能108
10.2.5 可扩展性110
10.3 适用案例110
10.3.1 事件记录110
10.3.2 内容管理系统与博客平台111
10.3.3 计数器111
10.3.4 限期使用111
10.4 不适用场合112
第11章 图数据库113
11.1 何谓图数据库114
11.2 特性115
11.2.1 一致性116
11.2.2 事务117
11.2.3 可用性117
11.2.4 查询功能118
11.2.5 可扩展性121
11.3 适用案例122
11.3.1 互联数据122
11.3.2 安排运输路线、分派货物和基于位置的服务123
11.3.3 推荐引擎123
11.4 不适用场合123
第12章 模式迁移124
12.1 模式变更125
12.2 变更关系型数据库的模式125
12.2.1 迁移全新项目126
12.2.2 迁移既有项目127
12.3 变更NoSQL数据库的模式129
12.3.1 增量迁移131
12.3.2 迁移图数据库的模式132
12.3.3 改变聚合结构132
12.4 延伸阅读133
12.5 要点133
第13章 混合持久化134
13.1 各异的数据存储需求135
13.2 混用各类数据库135
13.3 将直接数据库操作封装为服务137
13.4 扩展数据库以增强其功能138
13.5 选用合适的数据库技术139
13.6 企业使用混合持久化技术时的考量139
13.7 部署复杂度140
13.8 要点140
第14章 超越NoSQL141
14.1 文件系统142
14.2 事件溯源142
14.3 内存映像145
14.4 版本控制146
14.5 XML数据库146
14.6 对象数据库147
14.7 要点147
第15章 选择合适的数据库148
15.1 程序员的工作效率149
15.2 数据访问性能150
15.3 继续沿用默认的关系型数据库151
15.4 抽离数据库策略以降低风险152
15.5 要点153
15.6 结语153
参考资料154
已邀请:

Para

赞同来自:


Thanks to share it !

要回复问题请先登录注册