NoSQL數(shù)據(jù)庫(kù)原理與應(yīng)用
定 價(jià):55 元
- 作者:王愛國(guó) 許桂秋
- 出版時(shí)間:2019/4/1
- ISBN:9787115503503
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.132.3
- 頁(yè)碼:201
- 紙張:
- 版次:01
- 開本:16開
本書由淺入深,系統(tǒng)全面地介紹了NoSQL數(shù)據(jù)庫(kù)的理論、技術(shù)與開發(fā)實(shí)踐方法。
全書共9章,主要內(nèi)容包括NoSQL產(chǎn)生的原因以及它與傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)對(duì)比具有哪些優(yōu)勢(shì)、HBase分布式數(shù)據(jù)庫(kù)技術(shù)及其核心技術(shù)原理與實(shí)踐、MongoDB分布式數(shù)據(jù)庫(kù)技術(shù)的原理和實(shí)踐、Memcached和Redis技術(shù)、NewSQL數(shù)據(jù)庫(kù)技術(shù),以及HBase和MongoDB數(shù)據(jù)庫(kù)技術(shù)的綜合實(shí)驗(yàn)。
本書適合作為高校NoSQL數(shù)據(jù)庫(kù)技術(shù)的教材,也適合對(duì)NoSQL數(shù)據(jù)庫(kù)技術(shù)感興趣的讀者閱讀。
中科曙光的教育培訓(xùn)結(jié)構(gòu),全國(guó)數(shù)十所合作院校。中科曙光專業(yè)背景,曙光瑞翼教育使用教材,由一線企業(yè)工程師和技術(shù)人員與高校教師共同合作創(chuàng)作而成。系統(tǒng)完整的大數(shù)據(jù)專業(yè)解決方案,突出企業(yè)真實(shí)操作案例。
王愛國(guó),廣東石油化工學(xué)院計(jì)算機(jī)系副教授。長(zhǎng)期從事計(jì)算機(jī)專業(yè)教學(xué)工作,主要講授“計(jì)算機(jī)網(wǎng)絡(luò)”“路由交換技術(shù)”“數(shù)據(jù)庫(kù)原理”等課程,主持省、市級(jí)科研、教研項(xiàng)目多項(xiàng),主編或參編公開出版教材三部,公開發(fā)表論文多篇。
第 1章 緒論 1
1.1 數(shù)據(jù)庫(kù)系統(tǒng) 1
1.1.1 數(shù)據(jù)庫(kù)系統(tǒng)的基本概念 1
1.1.2 關(guān)系型數(shù)據(jù)庫(kù) 4
1.1.3 NoSQL的特點(diǎn) 6
1.2 分布式數(shù)據(jù)庫(kù)的數(shù)據(jù)管理 7
1.2.1 分布式數(shù)據(jù)處理 8
1.2.2 CAP理論 9
1.3 ACID與BASE 10
1.3.1 ACID特性 10
1.3.2 BASE原理 11
1.3.3 最終一致性 11
1.4 NoSQL分類 12
小結(jié) 14
思考題 14
第 2章 認(rèn)識(shí)HBase 15
2.1 HBase簡(jiǎn)介 15
2.1.1 HBase的發(fā)展歷程 15
2.1.2 HBase的特性 16
2.1.3 HBase與Hadoop 18
2.2 HDFS原理 19
2.2.1 HDFS的基本架構(gòu) 19
2.2.2 HDFS的分塊機(jī)制和副本機(jī)制 21
2.2.3 HDFS的讀寫機(jī)制 22
2.2.4 HDFS的特點(diǎn)與使用場(chǎng)景 23
2.3 HBase的組件和功能 24
2.3.1 客戶端 24
2.3.2 ZooKeeper 24
2.3.3 HMaster 25
2.3.4 RegionServer 26
2.4 HBase的使用場(chǎng)景及案例 26
2.4.1 搜索引擎應(yīng)用 27
2.4.2 捕獲增量數(shù)據(jù) 27
2.5 HBase 的安裝與配置 29
2.5.1 準(zhǔn)備工作 29
2.5.2 HBase安裝與配置 29
小結(jié) 32
思考題 33
第3章 HBase數(shù)據(jù)模型與使用 34
3.1 HBase數(shù)據(jù)模型 34
3.1.1 HBase的基本概念 34
3.1.2 數(shù)據(jù)模型 35
3.2 HBase Shell基本操作 36
3.2.1 數(shù)據(jù)定義 36
3.2.2 數(shù)據(jù)操作 38
3.2.3 過(guò)濾器操作 41
3.3 HBase編程方法 45
3.3.1 基于Java的編程方法 46
3.3.2 基于Thrift協(xié)議的編程方法 50
3.3.3 基于MapReduce的分布式處理 52
小結(jié) 55
思考題 56
第4章HBase原理實(shí)現(xiàn) 57
4.1 HBase基本原理 57
4.1.1 Region定位 57
4.1.2 數(shù)據(jù)存儲(chǔ)與讀取 60
4.1.3 WAL機(jī)制 62
4.2 HBase Region管理 63
4.2.1 HFile合并 64
4.2.2 Region拆分 65
4.2.3 Region合并 66
4.2.4 Region負(fù)載均衡 66
4.3 HBase集群管理 67
4.3.1 運(yùn)維管理 67
4.3.2 數(shù)據(jù)管理 68
4.3.3 故障處理 71
小結(jié) 75
思考題 75
第5章 MongoDB基礎(chǔ) 76
5.1 概述 76
5.2 基本概念 78
5.2.1 文檔數(shù)據(jù)模型 78
5.2.2 文檔存儲(chǔ)結(jié)構(gòu) 79
5.2.3 數(shù)據(jù)類型 85
5.2.4 MongoDB的安裝與測(cè)試 86
5.3 數(shù)據(jù)庫(kù)與集合的基本操作 88
5.3.1 數(shù)據(jù)庫(kù)操作 88
5.3.2 集合操作 90
5.4 文檔的基本操作 91
5.4.1 文檔的鍵定義規(guī)則 91
5.4.2 插入操作 92
5.4.2 更新操作 94
5.4.3 刪除操作 95
5.3.4 查詢操作 97
5.5 索引 100
5.5.1 索引簡(jiǎn)介 100
5.5.2 索引類型 101
5.5.3 索引操作 105
5.6 聚合 105
5.6.1 聚合管道方法 106
5.6.2 map-Reduce方法 107
小結(jié) 109
思考題 109
第6章 MongoDB進(jìn)階 110
6.1 集群架構(gòu) 110
6.1.1 主從復(fù)制 110
6.1.2 副本集 111
6.1.3 分片 112
6.2 MongoDB分布式集群部署 113
6.2.1 分布式集群架構(gòu) 113
6.2.2 部署副本集 114
6.2.3 部署分片集群 118
6.3 MongoDB編程方法 121
6.3.1 通過(guò)Java訪問(wèn)MongoDB 121
6.3.2 通過(guò)Python訪問(wèn)MongoDB 124
6.3.3 MongoDB的可視化工具robomongo 125
小結(jié) 127
思考題 127
第7章 其他非關(guān)系型數(shù)據(jù)庫(kù)簡(jiǎn)介 128
7.1 內(nèi)存數(shù)據(jù)庫(kù)簡(jiǎn)介 128
7.1.1 Memcached簡(jiǎn)介 128
7.1.2 Redis簡(jiǎn)介 137
7.2 圖數(shù)據(jù)庫(kù) 139
7.2.1 Neo4j 139
7.2.2 Neo4j應(yīng)用案例 147
小結(jié) 150
思考題 150
第8章 NewSQL數(shù)據(jù)庫(kù) 151
8.1 TiDB數(shù)據(jù)庫(kù) 151
8.1.1 TiDB架構(gòu) 151
8.1.2 TiDB的存儲(chǔ)原理 153
8.1.3 TiDB的管理機(jī)制 158
8.1.4 TiDB應(yīng)用案例 160
8.2 OceanBase 161
8.2.1 OceanBase特性 161
8.2.2 OceanBase系統(tǒng)架構(gòu) 162
小結(jié) 164
思考題 164
第9章 綜合實(shí)驗(yàn) 165
9.1 MongoDB 165
9.1.1 獲取和存儲(chǔ)數(shù)據(jù) 165
9.1.2 分析數(shù)據(jù) 167
9.2 HBase 169
9.2.1 數(shù)據(jù)庫(kù)的設(shè)計(jì) 169
9.2.2 實(shí)現(xiàn) 170
9.3 代碼清單 173
9.3.1 MongoDB 173
9.3.2 HBase 178
參考文獻(xiàn) 181