第1章绪论1
1.1数据管理概念1
1.2数据管理发展历史1
1.2.1人工管理阶段1
1.2.2文件系统管理阶段2
1.2.3数据库管理阶段3
1.2.4大数据管理阶段4
1.3传统数据模型5
1.3.1层次数据模型6
1.3.2网状数据模型6
1.3.3关系数据模型6
1.4NoSQL数据库产生的原因8
1.4.1NoSQL数据库的产生背景8
1.4.2NoSQL数据库的特点9
1.5分布式数据库基本原理10
1.5.1基本概念10
1.5.2CAP定理15
1.5.3ACID特性15
1.5.4BASE原理16
1.6NoSQL数据库类型16
1.6.1键值数据库16
1.6.2文档数据库17
1.6.3列族数据库19
1.6.4图数据库20
1.7NoSQL数据库选取22
1.8本章小结23
1.9习题23第2章键值数据库24
2.1键值数据模型24
2.1.1关联数组24
2.1.2命名空间25
2.2键的设计与分区25
2.2.1键名设计25
2.2.2键的分区26
2.2.3键存活时间28
2.3值的类型与结构化28
2.3.1值的类型28
2.3.2值的结构化29
2.3.3值的查询限制29
2.4键值数据库的特点29
2.5Redis键值数据库30
2.5.1Redis概述30
2.5.2键操作命令31
2.5.3字符串命令33
2.5.4哈希表命令38
2.5.5列表命令42
2.5.6集合命令47
2.5.7有序集合命令50
2.5.8事务定义命令54
2.6应用实例54
2.7本章小结57
2.8习题57第3章文档数据库58
3.1文档及其描述方法58
3.1.1文档概念58
3.1.2文档描述59
3.2集合及其结构60
3.2.1集合概念60
3.2.2集合结构61
3.2.3无模式数据库62
3.3文档关系建模62
3.3.1一对多的文档关系62
3.3.2多对多的文档关系63
3.4文档数据分区64
3.4.1文档垂直分区64
3.4.2文档水平分区 64
3.5MongoDB数据库65
3.5.1概述65
3.5.2数据库管理67
3.5.3集合管理68
3.5.4文档管理69
3.5.5文档查询73
3.5.6文档聚合77
3.5.7文档索引82
3.5.8嵌入高级语言84
3.6应用实例85
3.7本章小结86
3.8习题87第4章列族数据库88
4.1列族数据模型88
4.1.1列88
4.1.2超列88
4.1.3列族与行键88
4.1.4键空间90
4.2Cassandra集群架构90
4.2.1Cassandra特点90
4.2.2集群对等网络91
4.2.3节点通信协议91
4.2.4提交日志机制92
4.2.5数据复制策略92
4.3Cassandra查询语言93
4.3.1键空间定义94
4.3.2列族(表)定义95
4.3.3数据更新99
4.3.4数据查询100
4.3.5集合数据类型100
4.3.6索引定义102
4.3.7数据排序103
4.3.8聚合函数104
4.4应用实例105
4.5本章小结106
4.6习题107第5章图数据库109
5.1图的基本概念109
5.1.1节点109
5.1.2边109
5.1.3路径110
5.1.4遍历111
5.2图数据模型111
5.2.1属性图模型112
5.2.2三元组模型113
5.2.3超图模型113
5.3Neo4j概述114
5.3.1特点114
5.3.2免索引邻接114
5.3.3存储结构115
5.4Neo4j查询语言117
5.4.1写语句118
5.4.2读语句126
5.4.3通用语句129
5.4.4各类函数133
5.4.5创建索引138
5.4.6模式定义139
5.4.7创建约束141
5.5应用实例142
5.6本章小结145
5.7习题145第6章图数据科学算法库146
6.1图数据科学算法库概述146
6.1.1图结构可视化147
6.1.2命名图创建148
6.1.3内存资源估算150
6.1.4算法执行模式151
6.2路径查找算法152
6.2.1Dijkstra SourceTarget算法152
6.2.2Dijkstra SingleSource算法154
6.2.3A算法155
6.2.4Yen's算法158
6.3中心度算法161
6.3.1PageRank算法161
6.3.2Article Rank算法166
6.3.3Betweenness Centrality 算法167
6.4社区发现算法171
6.4.1Louvain算法171
6.4.2Label Propagation算法176
6.4.3Weakly Connected Components算法179
6.5节点相似度算法181
6.5.1Node Similarity算法182
6.5.2KNearest Neighbors算法185
6.6链接预测算法187
6.6.1Adamic Adar算法188
6.6.2Common Neighbors算法189
6.6.3Same Community算法190
6.7节点嵌入算法192
6.7.1FastRP算法192
6.7.2GraphSAGE算法196
6.7.3Node2Vec算法200
6.8本章小结202
6.9习题202第7章NoSQL数据库的安装204
7.1安装Docker容器204
7.1.1Docker容器概念204
7.1.2在Linux上安装Docker205
7.1.3在Windows上安装Docker207
7.2安装Redis键值数据库210
7.3安装MongoDB文档数据库212
7.4安装Cassandra列族数据库215
7.5安装Neo4j图数据库216参考文献219