NoSQL數據庫技術與應用(第2版)
黑馬程序員
商品描述
作者簡介
目錄大綱
目錄
第1章初識NoSQL1
1.1大數據時代給數據存儲帶來的挑戰1
1.2NoSQL簡介2
1.3NoSQL與傳統關系數據庫的區別3
1.4NoSQL基礎理論4
1.4.1CAP理論4
1.4.2BASE理論5
1.5NoSQL分類6
1.5.1鍵值數據庫6
1.5.2文檔數據庫7
1.5.3列式數據庫8
1.5.4圖數據庫9
1.6本章小結10
1.7課後習題10
第2章文檔數據庫MongoDB12
2.1MongoDB概述12
2.2MongoDB的邏輯結構13
2.3MongoDB的數據類型15
2.4MongoDB的特點18
2.5MongoDB的讀寫流程19
2.6本章小結20
2.7課後習題20
第3章MongoDB基礎操作22
3.1MongoDB部署22
3.1.1基於Windows操作系統部署22
3.1.2基於Linux操作系統部署24
3.2啟動MongoDB服務27
3.3使用MongoDB Shell操作MongoDB34
3.3.1安裝mongosh34
3.3.2啟動mongosh36
3.3.3數據庫操作38
3.3.4集合操作40
3.3.5文檔操作: 插入文檔45
3.3.6文檔操作: 查詢文檔48
3.3.7文檔操作: 更新文檔60
3.3.8文檔操作: 刪除文檔63
3.3.9聚合操作64
3.3.10索引操作79
3.3.11安全操作: 啟用訪問控制83
3.3.12安全操作: 用戶管理85
3.4使用Java驅動程序操作MongoDB91
3.4.1搭建Java開發環境91
3.4.2基於Java驅動程序連接MongoDB94
3.4.3基於Java驅動程序操作數據庫95
3.4.4基於Java驅動程序操作集合97
3.4.5基於Java驅動程序操作文檔100
3.5使用Python驅動程序操作MongoDB108
3.6使用Compass操作MongoDB108
3.6.1基於Compass連接MongoDB109
3.6.2基於Compass操作數據庫110
3.6.3基於Compass操作集合113
3.6.4基於Compass操作文檔118
3.7本章小結141
3.8課後習題141
第4章MongoDB副本集142
4.1副本集概述142
4.2選舉機制143
4.3部署副本集144
4.4初始化副本集148
4.5副本集操作151
4.5.1連接副本集151
4.5.2配置讀取偏好153
4.5.3同步復制154
4.5.4故障轉移155
4.5.5刪除節點156
4.5.6添加節點157
4.5.7修改節點160
4.6訪問控制165
4.7本章小結168
4.8課後習題168
第5章MongoDB分片集群170
5.1分片集群概述170
5.2分片策略172
5.3部署分片集群173
5.3.1環境準備173
5.3.2部署配置服務器175
5.3.3部署分片177
5.3.4部署路由180
5.3.5添加分片182
5.4分片集群操作184
5.5訪問控制189
5.6本章小結192
5.7課後習題192
第6章MongoDB GridFS193
6.1GridFS概述193
6.2GridFS存儲結構194
6.3GridFS基本操作195
6.3.1使用mongofiles操作GridFS195
6.3.2使用Java驅動程序操作GridFS203
6.3.3使用Python驅動程序操作GridFS209
6.4本章小結216
6.5課後習題217
第7章鍵值數據庫Redis218
7.1Redis概述218
7.2Redis應用場景219
7.3Redis支持的數據類型220
7.4Redis的部署221
7.5使用rediscli操作Redis226
7.5.1使用rediscli操作字符串226
7.5.2使用rediscli操作列表233
7.5.3使用rediscli操作集合238
7.5.4使用rediscli操作散列241
7.5.5使用rediscli操作有序集合246
7.5.6使用rediscli操作鍵254
7.6使用Java客戶端操作Redis260
7.7本章小結260
7.8課後習題260
第8章列式數據庫HBase262
8.1HBase概述262
8.2HBase數據模型264
8.3HBase體系結構265
8.4HBase部署267
8.5使用HBase Shell操作HBase271
8.6使用Java客戶端操作HBase281
8.7本章小結281
8.8課後習題281
第9章圖數據庫Neo4j283
9.1Neo4j概述283
9.2Neo4j的數據模型285
9.3Neo4j的部署286
9.3.1基於Windows操作系統286
9.3.2基於Linux操作系統291
9.4操作Neo4j292
9.4.1使用Cypher操作Neo4j292
9.4.2使用Java驅動程序操作Neo4j305
9.5本章小結305
9.6課後習題305
第10章綜合案例——二手房交易數據分析系統307
10.1系統概述307
10.2部署Spark309
10.3模塊開發: 導入數據309
10.4模塊開發: 數據分析309
10.5模塊開發: 數據可視化309
10.6本章小結309