注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫數(shù)據(jù)庫設(shè)計(jì)/管理NoSQL數(shù)據(jù)庫原理

NoSQL數(shù)據(jù)庫原理

NoSQL數(shù)據(jù)庫原理

定 價(jià):¥49.80

作 者: 侯賓
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787115483065 出版時(shí)間: 2018-08-01 包裝: 平裝
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書對(duì)統(tǒng)稱為NoSQL的分布式非關(guān)系型數(shù)據(jù)庫原理和使用方法進(jìn)行介紹。第 一章,首先介紹NoSQL數(shù)據(jù)庫的起源背景和設(shè)計(jì)理念,以及相關(guān)技術(shù)概念。其次介紹了大數(shù)據(jù)技術(shù)體系,以及NoSQL在該技術(shù)體系的地位和作用。第 二章首先回顧關(guān)系型數(shù)據(jù)庫的主要機(jī)制,以及NoSQL數(shù)據(jù)庫的常見技術(shù)原理,以及NoSQL的常見存儲(chǔ)模式。第三章對(duì)Hadoop工具進(jìn)行介紹,重點(diǎn)介紹HDFS的技術(shù)原理和基本使用方法。第四章介紹HBase的基本架構(gòu)、基本使用方法和編程方法。第五章介紹HBase中核心技術(shù)原理,包括水平分區(qū)機(jī)制、數(shù)據(jù)寫入機(jī)制、列族與合并機(jī)制等。對(duì)HBase中的管理方法、深入使用方法進(jìn)行簡(jiǎn)介。以及對(duì)HBase的第三方插件與工具進(jìn)行介紹。第六章介紹Cassandra的基本原理和使用方法。首先介紹Amazon Dynamo的相關(guān)原理,其次介紹Cassandra的安裝配置與CQL語言。第七章介紹MongoDB為代表的文檔型數(shù)據(jù)庫的原理和基本使用方法。第八章介紹其他一些知名的NoSQL數(shù)據(jù)庫技術(shù)與工具。

作者簡(jiǎn)介

  2007年7月起在北京郵電大學(xué)任教,教學(xué)經(jīng)驗(yàn)豐富,平均年教學(xué)時(shí)長(zhǎng)在100小時(shí)以上,在學(xué)生評(píng)教中一直具有良好的評(píng)價(jià)。所主講課程《信號(hào)與系統(tǒng)》、《電路分析基礎(chǔ)》等均屬于北京市精品課程,對(duì)教學(xué)過程管理和內(nèi)容體系要求較高。

圖書目錄

第 1章 緒論 1

 1.1 數(shù)據(jù)庫的相關(guān)概念 2

1.1.1 關(guān)系型數(shù)據(jù)庫管理系統(tǒng) 2

1.1.2 關(guān)系型數(shù)據(jù)庫的瓶頸 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ù)庫的基本原理 17

 2.1 關(guān)系型數(shù)據(jù)庫的原理簡(jiǎn)述 18

2.1.1 關(guān)系模型 18

2.1.2 關(guān)系型數(shù)據(jù)庫的完整性約束 19

2.1.3 關(guān)系型數(shù)據(jù)庫的事務(wù)機(jī)制 19

2.1.4 關(guān)系型數(shù)據(jù)庫的分布式部署 21

 2.2 分布式數(shù)據(jù)管理的特點(diǎn) 23

2.2.1 數(shù)據(jù)分片 24

2.2.2 數(shù)據(jù)多副本 24

2.2.3 一次寫入多次讀取 26

2.2.4 分布式系統(tǒng)的可伸縮性 27

 2.3 分布式系統(tǒng)的一致性問題 27

2.3.1 CAP原理 28

2.3.2 BASE和最終一致性 29

2.3.3 Paxos算法簡(jiǎn)介 30

 2.4 NoSQL的常見模式 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 布隆過濾器 38

小結(jié) 40

思考題 40

第3章 HDFS的基本原理 41

 3.1 Hadoop概述 42

3.1.1 Hadoop的由來 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ù)讀寫原理 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ù)倉庫 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 過濾查詢 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 通過Java訪問HBase 92

4.8.1 開發(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 過濾器的使用 98

 4.9 通過Python訪問HBase 99

4.9.1 基于Thrift框架的多語言編程 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ù)寫入和讀取機(jī)制 108

5.1.3 預(yù)寫日志 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ò)展開源軟件 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語言與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 讀寫一致性 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é)點(diǎn)管理方法 180

 6.8 編程訪問Cassandra 181

6.8.1 通過Java訪問Cassandra 181

6.8.2 通過Python訪問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ù)庫和集合操作 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 通過Java訪問MongoDB 213

7.7.1 表和數(shù)據(jù)操作 213

7.7.2 Gridfs操作 216

 7.8 通過Python訪問MongoDB 218

小結(jié) 220

思考題 220

第8章 其他NoSQL數(shù)據(jù)庫簡(jiǎn)介 221

 8.1 圖數(shù)據(jù)庫簡(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語言簡(jiǎn)介 226

8.2.5 通過Java訪問Neo4j 229

8.2.6 通過Python訪問Neo4j 230

 8.3 Redis和內(nèi)存數(shù)據(jù)庫 231

 8.4 搜索引擎系統(tǒng) 232

小結(jié) 236

思考題 236

附錄 237

附錄1 在CentOS 7上實(shí)現(xiàn)SSH無密碼訪問 237

附錄2 在CentOS 7上部署NTP服務(wù)端與客戶端 239

附錄3 在CentOS 7上安裝Python 3 240

附錄4 在CentOS 7上安裝Thrift編譯器 241

附錄5 《NoSQL數(shù)據(jù)庫原理》配套實(shí)驗(yàn)課程方案簡(jiǎn)介 242

 


本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)