| 
 新書推薦:
 
  《 
			儿童与青少年异常心理学(第四版)
			》
 售價:HK$ 
			217.8
 
  《 
			积弊:清朝的中叶困境与周期感知(一部政治思想史力作,反思传统时代的王朝周期)
			》
 售價:HK$ 
			86.9
 
  《 
			江河回望:中国文化与人生价值  许倬云 著 许先生最后的凝望与嘱托 人文精神 中国文化内核
			》
 售價:HK$ 
			85.8
 
  《 
			从概念到思维——写给法科新生的12堂法学导读课
			》
 售價:HK$ 
			74.8
 
  《 
			甲骨文丛书·尼罗河的源头:非洲大湖地区两千年
			》
 售價:HK$ 
			107.8
 
  《 
			一语胜万言
			》
 售價:HK$ 
			49.5
 
  《 
			朱子的穷理工夫论 , 香江哲学丛书
			》
 售價:HK$ 
			104.5
 
  《 
			雾越邸暴雪谜案:全2册(綾辻行人作品)
			》
 售價:HK$ 
			141.9
 
 
 | 
         
          | 內容簡介: |   
          | 本书先从NoSQL的核心概念开始介绍:无模式的数据模型、新的分布式模型、CAP理论等,然后介绍了在实现NoSQL会遇到的体系结构和设计方面的问题,并以很有代表性的几种数据库:Riak、MongoDB、Cassandra和Neo4j为例,展示了NoSQL数据库的使用。 |  
         
          | 目錄: |   
          | 目 录 前言
 **部分 概念
 第1章 为什么使用NoSQL3
 1.1 关系型数据库的价值3
 1.1.1 获取持久化数据3
 1.1.2 并发4
 1.1.3 集成4
 1.1.4 近乎标准的模型4
 1.2 阻抗失谐5
 1.3 “应用程序数据库”与“集成数据库”6
 1.4 蜂拥而来的集群8
 1.5 NoSQL登场9
 1.6 要点12
 第2章 聚合数据模型13
 2.1 聚合14
 2.1.1 关系模型与聚合模型示例14
 2.1.2 面向聚合的影响19
 2.2 键值数据模型与文档数据模型20
 2.3 列族存储21
 2.4 面向聚合数据库总结23
 2.5 延伸阅读24
 2.6 要点24
 第3章 数据模型详解25
 3.1 关系25
 3.2 图数据库26
 3.3 无模式数据库28
 3.4 物化视图30
 3.5 构建数据存取模型31
 3.6 要点36
 第4章 分布式模型37
 4.1 单一服务器37
 4.2 分片38
 4.3 主从复制40
 4.4 对等复制42
 4.5 结合“分片”与“复制”技术43
 4.6 要点44
 第5章 一致性47
 5.1 更新一致性47
 5.2 读取一致性49
 5.3 放宽“一致性”约束52
 5.4 放宽“持久性”约束56
 5.5 仲裁57
 5.6 延伸阅读59
 5.7 要点59
 第6章 版本戳61
 6.1 “商业事务”与“系统事务”61
 6.2 在多节点环境中生成版本戳63
 6.3 要点65
 第7章 映射-化简67
 7.1 基本“映射-化简”68
 7.2 分区与归并69
 7.3 组合“映射-化简”计算72
 7.3.1 举例说明两阶段“映射-化简”73
 7.3.2 增量式“映射-化简”76
 7.4 延伸阅读77
 7.5 要点77
 第二部分 实现
 第8章 键值数据库81
 8.1 何谓“键值数据库”81
 8.2 键值数据库特性83
 8.2.1 一致性83
 8.2.2 事务84
 8.2.3 查询功能84
 8.2.4 数据结构86
 8.2.5 可扩展性86
 8.3 适用案例87
 8.3.1 存放会话信息87
 8.3.2 用户配置信息87
 8.3.3 购物车数据87
 8.4 不适用场合87
 8.4.1 数据间关系87
 8.4.2 含有多项操作的事务88
 8.4.3 查询数据88
 8.4.4 操作关键字集合88
 第9章 文档数据库89
 9.1 何谓文档数据库90
 9.2 特性91
 9.2.1 一致性91
 9.2.2 事务92
 9.2.3 可用性93
 9.2.4 查询功能94
 9.2.5 可扩展性95
 9.3 适用案例97
 9.3.1 事件记录97
 9.3.2 内容管理系统及博客平台98
 9.3.3 网站分析与实时分析98
 9.3.4 电子商务应用程序98
 9.4 不适用场合98
 9.4.1 包含多项操作的复杂事务98
 9.4.2 查询持续变化的聚合结构98
 第10章 列族数据库99
 10.1 何谓列族数据库99
 10.2 特性100
 10.2.1 一致性103
 10.2.2 事务104
 10.2.3 可用性104
 10.2.4 查询功能105
 10.2.5 可扩展性107
 10.3 适用案例107
 10.3.1 事件记录107
 10.3.2 内容管理系统与博客平台108
 10.3.3 计数器108
 10.3.4 限期使用108
 10.4 不适用场合109
 第11章 图数据库111
 11.1 何谓图数据库111
 11.2 特性113
 11.2.1 一致性114
 11.2.2 事务114
 11.2.3 可用性115
 11.2.4 查询功能115
 11.2.5 可扩展性119
 11.3 适用案例120
 11.3.1 互联数据120
 11.3.2 安排运输路线、分派货物和基于位置的服务120
 11.3.3 推荐引擎121
 11.4 不适用场合121
 第12章 模式迁移123
 12.1 模式变更123
 12.2 变更关系型数据库的模式123
 12.2.1 迁移全新项目124
 12.2.2 迁移既有项目126
 12.3 变更NoSQL数据库的模式128
 12.3.1 增量迁移130
 12.3.2 迁移图数据库的模式131
 12.3.3 改变聚合结构132
 12.4 延伸阅读132
 12.5 要点132
 第13章 混合持久化133
 13.1 各异的数据存储需求133
 13.2 混用各类数据库134
 13.3 将直接数据库操作封装为服务136
 13.4 扩展数据库以增强其功能136
 13.5 选用合适的数据库技术138
 13.6 企业使用混合持久化技术时的考量138
 13.7 部署复杂度139
 13.8 要点140
 第14章 超越NoSQL141
 14.1 文件系统141
 14.2 事件溯源142
 14.3 内存映像144
 14.4 版本控制145
 14.5 XML数据库145
 14.6 对象数据库146
 14.7 要点146
 第15章 选择合适的数据库147
 15.1 程序员的工作效率149
 15.2 数据访问性能150
 15.3 继续沿用默认的关系型数据库150
 15.4 抽离数据库策略以降低风险151
 15.5 要点152
 15.6 结语153
 参考资料157
 Contents
 Part I: Understand . 1
 Chapter 1: Why NoSQL?  3
 1.1 The Value of Relational Databases  3
 1.1.1 Getting at Persistent Data  3
 1.1.2 Concurrency  4
 1.1.3 Integration . 4
 1.1.4 A Mostly Standard Model  4
 1.2 Impedance Mismatch  5
 1.3 Application and Integration Databases  6
 1.4 Attack of the Clusters  8
 1.5 The Emergence of NoSQL . 9
 1.6 Key Points  12
 Chapter 2: Aggregate Data Models  13
 2.1 Aggregates . 14
 2.1.1 Example of Relations and Aggregates  14
 2.1.2 Consequences of Aggregate Orientation  19
 2.2 Key-Value and Document Data Models . 20
 2.3 Column-Family Stores . 21
 2.4 Summarizing Aggregate-Oriented Databases . 23
 2.5 Further Reading . 24
 2.6 Key Points  24
 Chapter 3: More Details on Data Models . 25
 3.1 Relationships . 25
 3.2 Graph Databases . 26
 3.3 Schemaless Databases  28
 3.4 Materialized Views  30
 3.5 Modeling for Data Access  31
 3.6 Key Points  36
 Chapter 4: Distribution Models . 37
 4.1 Single Server  37
 4.2 Sharding  38
 4.3 Master-Slave Replication . 40
 4.4 Peer-to-Peer Replication . 42
 4.5 Combining Sharding and Replication  43
 4.6 Key Points  44
 Chapter 5: Consistency  47
 5.1 Update Consistency . 47
 5.2 Read Consistency . 49
 5.3 Relaxing Consistency . 52
 5.3.1 The CAP Theorem  53
 5.4 Relaxing Durability . 56
 5.5 Quorums . 57
 5.6 Further Reading . 59
 5.7 Key Points  59
 Chapter 6: Version Stamps . 61
 6.1 Business and System Transactions  61
 6.2 Version Stamps on Multiple Nodes  63
 6.3 Key Points  65
 Chapter 7: Map-Reduce . 67
 7.1 Basic Map-Reduce . 68
 7.2 Partitioning and Combining . 69
 7.3 Composing Map-Reduce Calculations . 72
 7.3.1 A Two Stage Map-Reduce Example  73
 7.3.2 Incremental Map-Reduce . 76
 7.4 Further Reading . 77
 7.5 Key Points  77
 Part II: Implement  79
 Chapter 8: Key-Value Databases  81
 8.1 What Is a Key-Value Store . 81
 8.2 Key-Value Store Features . 83
 8.2.1 Consistency . 83
 8.2.2 Transactions  84
 8.2.3 Query Features . 84
 8.2.4 Structure of Data  86
 8.2.5 Scaling  86
 8.3 Suitable Use Cases . 87
 8.3.1 Storing Session Information . 87
 8.3.2 User Pro.les, Preferences . 87
 8.3.3 Shopping Cart Data  87
 8.4 When Not to Use . 87
 8.4.1 Relationships among Data . 87
 8.4.2 Multioperation Transactions  88
 8.4.3 Query by Data . 88
 8.4.4 Operations by Sets  88
 Chapter 9: Document Databases  89
 9.1 What Is a Document Database? . 90
 9.2 Features . 91
 9.2.1 Consistency . 91
 9.2.2 Transactions  92
 9.2.3 Availability  93
 9.2.4 Query Features . 94
 9.2.5 Scaling  95
 9.3 Suitable Use Cases . 97
 9.3.1 Event Logging  97
 9.3.2 Content Management Systems, Blogging Platforms . 98
 9.3.3 Web Analytics or Real-Time Analytics . 98
 9.3.4 E-Commerce Applications . 98
 9.4 When Not to Use . 98
 9.4.1 Complex Transactions Spanning Different Operations  98
 9.4.2 Queries against Varying Aggregate Structure  98
 Chapter 10: Column-Family Stores  99
 10.1 What Is a Column-Family Data Store? . 99
 10.2 Features . 100
 10.2.1 Consistency  103
 10.2.2 Transactions  104
 10.2.3 Availability  104
 10.2.4 Query Features . 105
 10.2.5 Scaling  107
 10.3 Suitable Use Cases  107
 10.3.1 Event Logging  107
 10.3.2 Content Management Systems, Blogging Platforms . 108
 10.3.3 Counters  108
 10.3.4 Expiring Usage . 108
 10.4 When Not to Use . 109
 Chapter 11: Graph Databases . 111
 11.1 What Is a Graph Database? . 111
 11.2 Features . 113
 11.2.1 Consistency  114
 11.2.2 Transactions  114
 11.2.3 Availability  115
 11.2.4 Query Features . 115
 11.2.5 Scaling  119
 11.3 Suitable Use Cases  120
 11.3.1 Connected Data  120
 11.3.2 Routing, Dispatch, and Location-Based Services . 120
 11.3.3 Recommendation Engines  121
 11.4 When Not to Use . 121
 Chapter 12: Schema Migrations . 123
 12.1 Schema Changes  123
 12.2 Schema Changes in RDBMS  123
 12.2.1 Migrations for Green Field Projects . 124
 12.2.2 Migrations in Legacy Projects . 126
 12.3 Schema Changes in a NoSQL Data Store . 128
 12.3.1 Incremental Migration . 130
 12.3.2 Migrations in Graph Databases  131
 12.3.3 Changing Aggregate Structure  132
 12.4 Further Reading . 132
 12.5 Key Points  132
 Chapter 13: Polyglot Persistence . 133
 13.1 Disparate Data Storage Needs  133
 13.2 Polyglot Data Store Usage  134
 13.3 Service Usage over Direct Data Store Usage . 136
 13.4 Expanding for Better Functionality  136
 13.5 Choosing the Right Technology . 138
 13.6 Enterprise Concerns with Polyglot Persistence . 138
 13.7 Deployment Complexity  139
 13.8 Key Points  140
 Chapter 14: Beyond NoSQL  141
 14.1 File Systems  141
 14.2 Event Sourcing . 142
 14.3 Memory Image . 144
 14.4 Version Control . 145
 14.5 XML Databases . 145
 14.6 Object Databases . 146
 14.7 Key Points  146
 Chapter 15: Choosing Your Database  147
 15.1 Programmer Productivity . 147
 15.2 Data-Access Performance . 149
 15.3 Sticking with the Default  150
 15.4 Hedging Your Bets . 150
 15.5 Key Points  151
 15.6 Final Thoughts . 152
 Bibliography . 153
 |    |