第1章 Oracle NoSQL数据库和大数据概况 1
1.1 NoSQL系统概论 2
1.2 数据库系统发展回顾 3
1.3 大数据和NoSQL:特点和架构权衡 5
1.4 大数据处理的类型 7
1.5 NoSQL数据库和关系数据库 7
1.6 NoSQL数据库的类型 9
1.6.1 键值存储 9
1.6.2 文档存储 10
1.6.3 图形存储 10
1.6.4 列式存储 10
1.7 大数据的用例 11
1.8 Oracle的大数据解决方案 13
1.8.1 数据获取 14
1.8.2 数据组织 15
1.8.3 数据分析 17
1.8.4 Oracle的大数据工程系统 19
1.9 小结 23
第2章 Oracle NoSQL数据库简介 25
2.1 Oracle Berkeley DB 26
2.2 Oracle NoSQL数据库 29
2.3 数据库系统架构 31
2.3.1 分区和分片 33
2.3.2 可用性 35
2.3.3 最终一致性 37
2.3.4 持久性 39
2.3.5 事务 41
2.3.6 数据模型 42
2.3.7 性能 44
2.3.8 管理 45
2.3.9 其他产品集成 45
2.3.10 授权 46
2.4 小结 47
第3章 Oracle NoSQL数据库体系结构 49
3.1 高层体系结构以及术语 50
3.2 智能客户端驱动程序 51
3.3 分片、存储和网络拓扑 54
3.4 哈希、分区和数据分布 57
3.4.1 改变分片数量 59
3.4.2 改变复制因子 63
3.5 考虑多个数据中心 64
3.6 存储记录和灵活的数据模型 67
3.7 日志结构存储 72
3.8 持久性 74
3.9 ACID事务和分布式事务 77
3.10 小结 79
第4章 Oracle NoSQL数据库的安装和配置 81
4.1 Oracle NoSQL数据库的安装 82
4.1.1 下载Oracle NoSQL数据库软件 84
4.1.2 软件安装 84
4.1.3 Oracle NoSQL数据库管理服务 86
4.1.4 创建启动配置文件 89
4.1.5 进行合理性检查 93
4.2 Oracle NoSQL数据库的配置 94
4.2.1 计划 94
4.2.2 配置步骤 96
4.2.3 配置过程的自动化 102
4.2.4 部署的验证 103
4.3 小结 107
第5章 NoSQL数据库开发入门 109
5.1 基于KVLite开发 110
5.2 如何建立键空间模型 116
5.3 读写单一键值对的基础知识 119
5.4 从编程人员角度理解一致性和持久性 121
5.4.1 持久性 121
5.4.2 一致性 123
5.5 小结 126
第6章 读写数据 127
6.1 开发环境设置 128
6.2 写入数据 129
6.2.1 基本API功能 130
6.2.2 如何指定写API调用的持久性 134
6.3 读取记录 141
6.3.1 采用多种方式读取一条或多条记录 141
6.3.2 介绍保持读一致性的API 151
6.3.3 处理读操作的异常 159
6.4 删除记录 160
6.5 根据版本更新记录 163
6.6 小结 166
第7章 高级编程概念:Avro schema和绑定 167
7.1 Avro schema 168
7.1.1 schema演变 172
7.1.2 管理Avro schema 175
7.2 Avro绑定 179
7.2.1 特定绑定 180
7.2.2 通用绑定 189
7.2.3 JSON绑定 196
7.3 小结 199
第8章 数据库容量规划与大小调整 201
8.1 收集容量大小需求 202
8.1.1 应用程序的特性 203
8.1.2 硬件规格 208
8.2 容量规划和大小调整 209
8.2.1 测算一个典型分片的容量 210
8.2.2 决定分片和数据分区的总数 219
8.3 小结 221
第9章 高级主题 223
9.1 集成Hadoop 224
9.2 RDF Graph 228
9.3 集成Complex Event Processing 230
9.4 数据库外部表 231
9.4.1 定义外部表 233
9.4.2 编辑配置文件 235
9.4.3 发布配置 235
9.4.4 测试nosql-stream脚本 235
9.4.5 使用外部表读取Oracle NoSQL数据库中的数据 236
9.5 小结 237