定 價(jià):¥49.80
作 者: | 侯賓 |
出版社: | 人民郵電出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787115483065 | 出版時(shí)間: | 2018-08-01 | 包裝: | 平裝 |
開(kāi)本: | 16開(kāi) | 頁(yè)數(shù): | 字?jǐn)?shù): |
第 1章 緒論 1
1.1 數(shù)據(jù)庫(kù)的相關(guān)概念 2
1.1.1 關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng) 2
1.1.2 關(guān)系型數(shù)據(jù)庫(kù)的瓶頸 4
1.1.3 NoSQL的特點(diǎn) 4
1.1.4 NewSQL的概念 6
1.1.5 NoSQL的典型應(yīng)用場(chǎng)景 7
1.2 大數(shù)據(jù)的技術(shù)體系 8
1.2.1 大數(shù)據(jù)的特征 9
1.2.2 大數(shù)據(jù)的采集 10
1.2.3 大數(shù)據(jù)的存儲(chǔ) 11
1.2.4 大數(shù)據(jù)的管理和使用 13
1.2.5 數(shù)據(jù)可視化 13
1.2.6 大數(shù)據(jù)安全與治理 15
小結(jié) 15
思考題 16
第 2章 NoSQL數(shù)據(jù)庫(kù)的基本原理 17
2.1 關(guān)系型數(shù)據(jù)庫(kù)的原理簡(jiǎn)述 18
2.1.1 關(guān)系模型 18
2.1.2 關(guān)系型數(shù)據(jù)庫(kù)的完整性約束 19
2.1.3 關(guān)系型數(shù)據(jù)庫(kù)的事務(wù)機(jī)制 19
2.1.4 關(guān)系型數(shù)據(jù)庫(kù)的分布式部署 21
2.2 分布式數(shù)據(jù)管理的特點(diǎn) 23
2.2.1 數(shù)據(jù)分片 24
2.2.2 數(shù)據(jù)多副本 24
2.2.3 一次寫(xiě)入多次讀取 26
2.2.4 分布式系統(tǒng)的可伸縮性 27
2.3 分布式系統(tǒng)的一致性問(wèn)題 27
2.3.1 CAP原理 28
2.3.2 BASE和最終一致性 29
2.3.3 Paxos算法簡(jiǎn)介 30
2.4 NoSQL的常見(jiàn)模式 33
2.4.1 鍵值對(duì)存儲(chǔ)模式 33
2.4.2 文檔式存儲(chǔ)模式 34
2.4.3 列存儲(chǔ)模式 35
2.4.4 圖存儲(chǔ)模式 36
2.5 NoSQL系統(tǒng)的其他相關(guān)技術(shù) 37
2.5.1 分布式數(shù)據(jù)處理 37
2.5.2 時(shí)間同步服務(wù) 38
2.5.3 布隆過(guò)濾器 38
小結(jié) 40
思考題 40
第3章 HDFS的基本原理 41
3.1 Hadoop概述 42
3.1.1 Hadoop的由來(lái) 42
3.1.2 Hadoop的架構(gòu)與擴(kuò)展 43
3.1.3 Hadoop的部署需求 45
3.2 HDFS原理 46
3.2.1 HDFS架構(gòu) 46
3.2.2 Namenode的數(shù)據(jù)結(jié)構(gòu) 47
3.2.3 數(shù)據(jù)分塊和多副本機(jī)制 48
3.2.4 數(shù)據(jù)讀寫(xiě)原理 50
3.2.5 HDFS支持的序列化文件 51
3.3 部署和配置HDFS 52
3.3.1 部署HDFS 53
3.3.2 HDFS的基本配置 55
3.3.3 集群的啟動(dòng)和停止 57
3.4 使用和管理HDFS 58
3.4.1 管理和操作命令 58
3.4.2 格式化Namenode 59
3.4.3 Namenode的安全模式 60
3.4.4 元數(shù)據(jù)恢復(fù) 61
3.4.5 子節(jié)點(diǎn)添加與刪除 61
3.4.6 HDFS文件系統(tǒng)操作 62
3.4.7 以Web方式查看文件系統(tǒng) 64
3.5 MapReduce原理簡(jiǎn)介 66
3.6 Hive分布式數(shù)據(jù)倉(cāng)庫(kù) 68
小結(jié) 69
思考題 69
第4章 HBase的基本原理與使用 70
4.1 HBase概述 71
4.2 HBase的數(shù)據(jù)模型 72
4.3 HBase的拓?fù)浣Y(jié)構(gòu) 74
4.4 HBase部署與配置 75
4.5 子節(jié)點(diǎn)伸縮性管理 78
4.6 HBase的基本操作 79
4.6.1 HBase Shell 79
4.6.2 表和列族操作 79
4.6.3 數(shù)據(jù)更新 82
4.6.4 數(shù)據(jù)查詢 83
4.6.5 過(guò)濾查詢 85
4.6.6 快照操作 89
4.7 批量導(dǎo)入導(dǎo)出 89
4.7.1 批量導(dǎo)入數(shù)據(jù) 89
4.7.2 備份和恢復(fù) 91
4.8 通過(guò)Java訪問(wèn)HBase 92
4.8.1 開(kāi)發(fā)環(huán)境的配置 92
4.8.2 表的連接和操作 93
4.8.3 數(shù)據(jù)更新 94
4.8.4 數(shù)據(jù)查詢 96
4.8.5 刪除列和行 97
4.8.6 過(guò)濾器的使用 98
4.9 通過(guò)Python訪問(wèn)HBase 99
4.9.1 基于Thrift框架的多語(yǔ)言編程 99
4.9.2 環(huán)境準(zhǔn)備 100
4.9.3 代碼分析 101
小結(jié) 104
思考題 104
第5章 HBase的高 級(jí)原理 105
5.1 水平分區(qū)原理 106
5.1.1 META表 106
5.1.2 數(shù)據(jù)寫(xiě)入和讀取機(jī)制 108
5.1.3 預(yù)寫(xiě)日志 110
5.1.4 分區(qū)拆分 111
5.2 列族與Store 113
5.2.1 列族的屬性 113
5.2.2 表在HDFS上的存儲(chǔ) 115
5.2.3 HFile的結(jié)構(gòu) 116
5.2.4 Storefile合并 119
5.3 數(shù)據(jù)表的基本設(shè)計(jì)原則 121
5.4 HBase集群的高可用性與伸縮性 121
5.4.1 Zookeeper的基本原理 122
5.4.2 基于Zookeeper的高可用性 124
5.4.3 獨(dú)立安裝Zookeeper 125
5.4.4 集群間同步復(fù)制 126
5.5 HBase的擴(kuò)展 128
5.5.1 協(xié)處理器機(jī)制 128
5.5.2 基于HBase的分布式處理 129
5.5.3 擴(kuò)展開(kāi)源軟件 131
5.5.4 FusionInsight HD簡(jiǎn)介 134
小結(jié) 135
思考題 136
第6章 Cassandra的原理和使用 137
6.1 Cassandra概述 138
6.2 Cassandra的技術(shù)原理 138
6.2.1 Amazon Dynamo 138
6.2.2 Cassandra的數(shù)據(jù)模型 143
6.2.3 Yaml格式 145
6.2.4 其他相關(guān)技術(shù)原理 146
6.3 Cassandra的部署與配置 147
6.3.1 單節(jié)點(diǎn)部署Cassandra 147
6.3.2 Cassandra的配置文件 148
6.3.3 Cassandra集群部署 150
6.3.4 集群?jiǎn)?dòng) 150
6.4 CQL語(yǔ)言與cqlsh環(huán)境 151
6.4.1 cqlsh環(huán)境簡(jiǎn)介 152
6.4.2 鍵空間管理 153
6.4.3 數(shù)據(jù)表管理 156
6.4.4 CQL的數(shù)據(jù)類型 158
6.5 CQL數(shù)據(jù)查詢 161
6.5.1 基本數(shù)據(jù)查詢 161
6.5.2 條件查詢 162
6.5.3 索引機(jī)制 164
6.5.4 使用標(biāo)量函數(shù) 166
6.6 CQL數(shù)據(jù)更新 166
6.6.1 插入、更新和刪除 166
6.6.2 讀寫(xiě)一致性 169
6.6.3 集合列操作 171
6.6.4 計(jì)數(shù)器列的操作 174
6.6.5 日期時(shí)間列的操作 175
6.6.6 批量導(dǎo)入/導(dǎo)出數(shù)據(jù) 176
6.7 基本集群維護(hù)方法 177
6.7.1 編程接口簡(jiǎn)介 177
6.7.2 多數(shù)據(jù)中心與機(jī)架感知策略 177
6.7.3 Nodetool工具 178
6.7.4 常見(jiàn)節(jié)點(diǎn)管理方法 180
6.8 編程訪問(wèn)Cassandra 181
6.8.1 通過(guò)Java訪問(wèn)Cassandra 181
6.8.2 通過(guò)Python訪問(wèn)Cassandra 182
小結(jié) 183
思考題 183
第7章 MongoDB的原理和使用 184
7.1 概述 185
7.2 MongoDB的技術(shù)原理 185
7.2.1 文檔和集合 185
7.2.2 分片機(jī)制和集群架構(gòu) 186
7.2.3 CouchDB簡(jiǎn)介 188
7.3 安裝配置MongoDB 189
7.3.1 單機(jī)環(huán)境部署 189
7.3.2 MongoDB的配置文件 191
7.4 基本命令行操作 191
7.4.1 Shell環(huán)境 191
7.4.2 數(shù)據(jù)庫(kù)和集合操作 193
7.4.3 基本增刪改查操作 194
7.4.4 聚合和管道 196
7.4.5 索引操作 198
7.4.6 Gridfs的原理和操作 201
7.5 批量操作和數(shù)據(jù)備份 203
7.6 MongoDB集群化部署 204
7.6.1 單機(jī)多實(shí)例 204
7.6.2 部署復(fù)制集 205
7.6.3 部署分片集 209
7.7 通過(guò)Java訪問(wèn)MongoDB 213
7.7.1 表和數(shù)據(jù)操作 213
7.7.2 Gridfs操作 216
7.8 通過(guò)Python訪問(wèn)MongoDB 218
小結(jié) 220
思考題 220
第8章 其他NoSQL數(shù)據(jù)庫(kù)簡(jiǎn)介 221
8.1 圖數(shù)據(jù)庫(kù)簡(jiǎn)介 222
8.2 Neo4j的安裝與使用 223
8.2.1 在Windows中安裝Neo4j 223
8.2.2 在CentOS 7中安裝Neo4j 224
8.2.3 Neo4j的Web操作界面 225
8.2.4 Cypher語(yǔ)言簡(jiǎn)介 226
8.2.5 通過(guò)Java訪問(wèn)Neo4j 229
8.2.6 通過(guò)Python訪問(wèn)Neo4j 230
8.3 Redis和內(nèi)存數(shù)據(jù)庫(kù) 231
8.4 搜索引擎系統(tǒng) 232
小結(jié) 236
思考題 236
附錄 237
附錄1 在CentOS 7上實(shí)現(xiàn)SSH無(wú)密碼訪問(wèn) 237
附錄2 在CentOS 7上部署NTP服務(wù)端與客戶端 239
附錄3 在CentOS 7上安裝Python 3 240
附錄4 在CentOS 7上安裝Thrift編譯器 241
附錄5 《NoSQL數(shù)據(jù)庫(kù)原理》配套實(shí)驗(yàn)課程方案簡(jiǎn)介 242