深入NoSQL這本書的作者主要關(guān)注了文檔數(shù)據(jù)庫,列存儲(chǔ)數(shù)據(jù)庫,和鍵值數(shù)據(jù)庫三類最常用的nosql數(shù)據(jù)庫,不少讀者認(rèn)為讀完深入NoSQL這本書之后,可以對nosql有一個(gè)整體的把握,深入研究的話就會(huì)對NoSQL有一個(gè)整體的全局認(rèn)識。本節(jié)內(nèi)容東坡小編為大家整理帶來的是一份pdf格式完整電子版深入NoSQL(中文版),需要查閱這本電子書的朋友只需點(diǎn)擊本文相應(yīng)的下載地址進(jìn)行下載即可!
深入nosql電子書內(nèi)容簡介
該書是一本全面的NoSQL實(shí)踐指南。書中主要關(guān)注NoSQL的基本概念,以及使用NoSQL數(shù)據(jù)庫的切實(shí)可行的解決方案。書中介紹了基于MapReduce的可伸縮處理,演示Hadoop用例,還有Hive和Pig這樣的高層抽象。包含許多用例演示,同時(shí)也會(huì)討論Google、Amazon、Facebook、Twitter和LinkedIn的可伸縮數(shù)據(jù)架構(gòu)。
深入NoSQL(中文版)目錄
目 錄
第一部分 NoSQL入門
第1章 NoSQL的概念及適用范圍 2
1.1 定義和介紹 3
1.1.1 背景與歷史 3
1.1.2 大數(shù)據(jù) 5
1.1.3 可擴(kuò)展性 7
1.1.4 MapReduce 8
1.2 面向列的有序存儲(chǔ) 9
1.3 鍵/值存儲(chǔ) 11
1.4 文檔數(shù)據(jù)庫 14
1.5 圖形數(shù)據(jù)庫 15
1.6 小結(jié) 16
第2章 NoSQL上手初體驗(yàn) 17
2.1 第一印象——兩個(gè)簡單的例子 17
2.1.1 簡單的位置偏好數(shù)據(jù)集 17
2.1.2 存儲(chǔ)汽車品牌和型號數(shù)據(jù) 22
2.2 使用多種語言 30
2.2.1 MongoDB驅(qū)動(dòng) 30
2.2.2 初識Thrift 33
2.3 小結(jié) 34
第3章 NoSQL接口與交互 36
3.1 沒了SQL還剩什么 36
3.1.1 存儲(chǔ)和訪問數(shù)據(jù) 37
3.1.2 MongoDB數(shù)據(jù)存儲(chǔ)與訪問 37
3.1.3 MongoDB數(shù)據(jù)查詢 41
3.1.4 Redis數(shù)據(jù)存儲(chǔ)與訪問 43
3.1.5 Redis數(shù)據(jù)查詢 47
3.1.6 HBase數(shù)據(jù)存儲(chǔ)與訪問 50
3.1.7 HBase數(shù)據(jù)查詢 52
3.1.8 Apache Cassandra數(shù)據(jù)存儲(chǔ)與訪問 54
3.1.9 Apache Cassandra數(shù)據(jù)查詢 55
3.2 NoSQL數(shù)據(jù)存儲(chǔ)的語言綁定 56
3.2.1 Thrift 56
3.2.2 Java 56
3.2.3 Python 58
3.2.4 Ruby 59
3.2.5 PHP 59
3.3 小結(jié) 60
第二部分 NoSQL基礎(chǔ)
第4章 理解存儲(chǔ)架構(gòu) 62
4.1 使用面向列的數(shù)據(jù)庫 63
4.1.1 使用關(guān)系型數(shù)據(jù)庫中的表格和列 63
4.1.2 列數(shù)據(jù)庫對比RDBMS 65
4.1.3 列數(shù)據(jù)庫當(dāng)做鍵/值對的嵌套映射表 67
4.1.4 Webtable布局 70
4.2 HBase分布式存儲(chǔ)架構(gòu) 71
4.3 文檔存儲(chǔ)內(nèi)部機(jī)制 73
4.3.1 用內(nèi)存映射文件存儲(chǔ)數(shù)據(jù) 74
4.3.2 MongoDB集合和索引使用指南 75
4.3.3 MongoDB的可靠性和耐久性 75
4.3.4 水平擴(kuò)展 76
4.4 鍵/值存儲(chǔ)Memcached和Redis 78
4.4.1 Memcached的內(nèi)部結(jié)構(gòu) 78
4.4.2 Redis的內(nèi)部結(jié)構(gòu) 79
4.5 最終一致性非關(guān)系型數(shù)據(jù)庫 80
4.5.1 一致性哈! 81
4.5.2 對象版本 82
4.5.3 閑話協(xié)議和提示移交 83
4.6 小結(jié) 83
第5章 執(zhí)行CRUD操作 84
5.1 創(chuàng)建記錄 84
5.1.1 在以文檔為中心的數(shù)據(jù)庫中創(chuàng)建記錄 85
5.1.2 面向列數(shù)據(jù)庫的創(chuàng)建操作 91
5.1.3 鍵/值映射表的創(chuàng)建操作 93
5.2 訪問數(shù)據(jù) 96
5.2.1 用MongoDB訪問文檔 96
5.2.2 用HBase訪問數(shù)據(jù) 97
5.2.3 查詢Redis 98
5.3 更新和刪除數(shù)據(jù) 98
5.3.1 使用MongoDB、HBase和Redis更新及修改數(shù)據(jù) 98
5.3.2 有限原子性和事務(wù)完整性 99
5.4 小結(jié) 100
第6章 查詢NoSQL存儲(chǔ) 101
6.1 SQL與MongoDB查詢功能的相似點(diǎn) 101
6.1.1 加載MovieLens數(shù)據(jù) 103
6.1.2 MongoDB中的MapReduce 108
6.2 訪問HBase等面向列數(shù)據(jù)庫中的數(shù)據(jù) 111
6.3 查詢Redis數(shù)據(jù)存儲(chǔ) 113
6.4 小結(jié) 116
第7章 修改數(shù)據(jù)存儲(chǔ)及管理演進(jìn) 117
7.1 修改文檔數(shù)據(jù)庫 117
7.1.1 弱schema的靈活性 120
7.1.2 MongoDB的數(shù)據(jù)導(dǎo)入與導(dǎo)出 121
7.2 面向列數(shù)據(jù)庫中數(shù)據(jù)schema的演進(jìn) 124
7.3 HBase數(shù)據(jù)導(dǎo)入與導(dǎo)出 125
7.4 鍵/值存儲(chǔ)中的數(shù)據(jù)演變 126
7.5 小結(jié) 126
第8章 數(shù)據(jù)索引與排序 127
8.1 數(shù)據(jù)庫索引的基本概念 127
8.2 MongoDB的索引與排序 128
8.3 MongoDB里創(chuàng)建和使用索引 131
8.3.1 組合與嵌套鍵 136
8.3.2 創(chuàng)建唯一索引和稀疏索引 138
8.3.3 基于關(guān)鍵字的搜索和多重鍵 139
8.4 CouchDB的索引與排序 140
8.5 Apache Cassandra的索引與排序 141
8.6 小結(jié) 143
第9章 事務(wù)和數(shù)據(jù)完整性的管理 144
9.1 RDBMS和ACID 144
9.2 分布式ACID系統(tǒng) 147
9.2.1 一致性 149
9.2.2 可用性 149
9.2.3 分區(qū)容忍性 149
9.3 維持CAP 151
9.3.1 妥協(xié)可用性 153
9.3.2 妥協(xié)分區(qū)容忍性 153
9.3.3 妥協(xié)一致性 154
9.4 NoSQL產(chǎn)品的一致性實(shí)現(xiàn) 155
9.4.1 MongoDB的分布一致性 155
9.4.2 CouchDB的最終一致性 155
9.4.3 Apache Cassandra的最終一致性 156
9.4.4 Membase的一致性 157
9.5 小結(jié) 157
第三部分 熟悉NoSQL
第10章 使用云中的NoSQL 160
10.1 Google App Engine 161
10.1.1 GAE Python SDK:安裝、設(shè)置和起步 161
10.1.2 使用Python進(jìn)行基本的GAE數(shù)據(jù)建模 165
10.1.3 查詢與索引 168
10.1.4 過濾和結(jié)果排序 170
10.1.5 Java App Engine SDK 172
10.2 Amazon SimpleDB 175
10.2.1 SimpleDB入門 176
10.2.2 使用REST API 178
10.2.3 使用Java訪問SimpleDB 181
10.2.4 通過Ruby和Python使用SimpleDB 182
10.3 小結(jié) 183
第11章 MapReduce可擴(kuò)展并行處理 185
11.1 理解MapReduce 186
11.1.1 找出每股最高價(jià) 188
11.1.2 加載歷史NYSE市場數(shù)據(jù)到CouchDB 189
11.2 MapReduce和HBase 192
11.3 MapReduce和Apache Mahout 196
11.4 小結(jié) 197
第12章 使用Hive分析大數(shù)據(jù) 199
12.1 Hive基礎(chǔ) 199
12.2 回到電影評分 203
12.3 親切的SQL 209
12.4 HiveQL連接 211
12.4.1 計(jì)劃解釋 213
12.4.2 分區(qū)表 215
12.5 小結(jié) 215
第13章 綜覽數(shù)據(jù)庫內(nèi)部 216
13.1 MongoDB內(nèi)部 217
13.1.1 MongoDB傳輸協(xié)議 218
13.1.2 插入文檔 219
13.1.3 查詢集合 219
13.1.4 MongoDB數(shù)據(jù)庫文件 220
13.2 Membase架構(gòu) 222
13.3 Hypertable底層 224
13.3.1 正則表達(dá)式支持 224
13.3.2 布隆過濾器 224
13.4 Apache Cassandra 225
13.4.1 點(diǎn)對點(diǎn)模型 225
13.4.2 基于Gossip和Antientropy 225
13.4.3 快速寫 226
13.4.4 提示移交 226
13.5 Berkeley DB 226
13.6 小結(jié) 228
第四部分 掌握NoSQL
第14章 選擇NoSQL 230
14.1 比較NoSQL產(chǎn)品 230
14.1.1 可擴(kuò)展性 230
14.1.2 事務(wù)完整性和一致性 233
14.1.3 數(shù)據(jù)模型 233
14.1.4 查詢支持 235
14.1.5 接口可用性 236
14.2 性能測試 237
14.2.1 50/50的讀和更新 237
14.2.2 95/5的讀和更新 237
14.2.3 掃描 238
14.2.4 可擴(kuò)展性測試 238
14.2.5 Hypertable測試 238
14.3 背景比較 239
14.4 小結(jié) 240
第15章 共存 241
15.1 MySQL用作NoSQL 241
15.2 靜態(tài)數(shù)據(jù)存儲(chǔ) 244
15.2.1 存儲(chǔ)多元化在Facebook中的應(yīng)用 245
15.2.2 數(shù)據(jù)倉庫和商業(yè)智能 246
15.3 Web框架和NoSQL 247
15.3.1 Rails和NoSQL 247
15.3.2 Django和NoSQL 248
15.3.3 使用Spring Data 250
15.4 從RDBMS遷移到NoSQL 254
15.5 小結(jié) 254
第16章 性能調(diào)! 256
16.1 并行算法的目標(biāo) 256
16.1.1 減少延遲的含義 256
16.1.2 如何增加吞吐 257
16.1.3 線性擴(kuò)展 257
16.2 公式與模型 257
16.2.1 Amdahl法則 257
16.2.2 Little法則 258
16.2.3 消息成本模型 259
16.3 分區(qū) 259
16.4 規(guī)劃異構(gòu)環(huán)境 260
16.5 其他MapReduce調(diào)! 261
16.5.1 通信成本 261
16.5.2 壓縮 261
16.5.3 文件塊大小 261
16.5.4 并行復(fù)制 262
16.6 HBase Coprocessor 262
16.7 布隆過濾器 262
16.8 小結(jié) 262
第17章 工具和實(shí)用程序 263
17.1 RRDTool 263
17.2 Nagios 265
17.3 Scribe 266
17.4 Flume 267
17.5 Chukwa 267
17.6 Pig 268
17.6.1 使用Pig 269
17.6.2 Pig Latin基礎(chǔ) 269
17.7 Nodetool 271
17.8 OpenTSDB 272
17.9 SOLANDRA 273
17.10 Hummingbird和C5T 274
17.11 GeoCouch 275
17.12 Alchemy Database 276
17.13 Webdis 276
17.14 小結(jié) 276
附錄A 安裝與配置 278
深入NoSQL(中文版)內(nèi)容截圖
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版