-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

NoSQL實踐指南:基本原則、設計準則及實用技巧

( 簡體 字)
作者:[美]丹·蘇利文(Dan Sullivan)類別:1. -> 資料庫 -> NoSQL
譯者:
出版社:機械工業出版社NoSQL實踐指南:基本原則、設計準則及實用技巧 3dWoo書號: 43745
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:3/1/2016
頁數:307
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111531173
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

本書作者DanSullivan使用過位于行業前沿的各種數據庫產品,在本書中,他利用20多年的工作經驗,講解了鍵值數據庫、文檔數據庫、列族數據庫及圖數據庫這四類NoSQL數據庫的優點、用例及術語。對于每一種數據庫,他都給出了務實的開發技巧,以幫助大家構建高價值的應用程序。通過分步講解的范例,讀者能夠學到如何為每項任務選擇合適的數據庫,以及怎樣用正確的方式來使用該數據庫。
目錄:

譯者序
前 言
致 謝
引 言
第一部分 入  門
第1章 用不同的數據庫應對不同的需求 2
1.1 關系型數據庫的設計 3
1.2 早期的數據管理系統 4
1.2.1 平面文件數據管理系統 4
1.2.2 分層數據模型系統 7
1.2.3 網絡數據管理系統 9
1.2.4 早期數據管理系統小結 11
1.3 引發變革的關系型數據庫 11
1.4 催生NoSQL數據庫(非單純的SQL數據庫/非SQL數據庫)的動因 18
1.4.1 可伸縮性 18
1.4.2 成本開銷 19
1.4.3 靈活性 19
1.4.4 可用性 20
1.5 小結 20
1.6 案例研究 21
1.7 復習題 21
1.8 引用資料 22
1.9 參考書目 22
第2章 NoSQL數據庫的種類 23
2.1 分布式數據庫的數據管理 24
2.1.1 持久地存儲數據 25
2.1.2 維護數據的一致性 25
2.1.3 確保數據的可用性 26
2.1.4 在響應時間、一致性與持久性之間尋求平衡 29
2.1.5 CAP定理:一致性、可用性及分區保護性 31
2.2 ACID與BASE 32
2.2.1 ACID:原子性、一致性、隔離性、持久性 33
2.2.2 BASE:基本可用、軟狀態、最終一致 33
2.2.3 最終一致性的類型 34
2.3 四種NoSQL數據庫類型 35
2.3.1 鍵值對數據庫 36
2.3.2 文檔數據庫 40
2.3.3 列族數據庫 42
2.3.4 圖數據庫 43
2.4 小結 45
2.5 復習題 46
2.6 引用資料 47
2.7 參考書目 47
第二部分 鍵值數據庫
第3章 鍵值數據庫簡介 50
3.1 從數組到鍵值數據庫的演變 51
3.1.1 數組(帶著輔助輪的鍵值數據存儲機制) 51
3.1.2 關聯數組(拿掉輔助輪的鍵值數據存儲機制) 52
3.1.3 緩存(加裝了齒輪的自行車) 53
3.1.4 內存和磁盤中的鍵值數據庫(從自行車到機動車) 55
3.2 鍵值數據庫的重要特性 56
3.2.1 簡潔:開發者不需要設計復雜的數據模型 56
3.2.2 速度:越快越好 57
3.2.3 易于縮放:隨時應對訪問量的變化 59
3.3 鍵:不只是無意義的標識符 63
3.3.1 如何構造鍵名 63
3.3.2 通過鍵來定位相關的值 65
3.4 值:存放任意數據 68
3.4.1 值不一定要有明確的類型 68
3.4.2 對值進行搜索時的一些限制 69
3.5 小結 70
3.6 復習題 71
3.7 引用資料 71
3.8 參考書目 72
第4章 鍵值數據庫的術語 73
4.1 與鍵值數據庫的數據建模有關的術語 74
4.1.1 鍵 75
4.1.2 值 77
4.1.3 命名空間 77
4.1.4 分區 78
4.1.5 分區鍵 80
4.1.6 無綱要的模型 80
4.2 與鍵值數據庫的架構有關的術語 81
4.2.1 集群 81
4.2.2 環 82
4.2.3 復制 84
4.3 與鍵值數據庫的實現有關的術語 84
4.3.1 哈希函數 84
4.3.2 碰撞 86
4.3.3 壓縮 86
4.4 小結 87
4.5 復習題 87
4.6 引用資料 88
第5章 鍵值數據庫的設計 89
5.1 鍵的設計與分區 90
5.1.1 鍵名應該遵循命名約定 90
5.1.2 設計良好的鍵名,以簡化程序的代碼 91
5.1.3 處理位于某個范圍內的值 92
5.1.4 設計鍵名時必須考慮實現層面的限制 93
5.1.5 如何根據鍵名來分區 94
5.2 設計結構化的值 95
5.2.1 結構化的數據類型有助于降低延遲 95
5.2.2 過于龐大的值可能會降低讀取操作和寫入操作的性能 97
5.3 鍵值數據庫的局限 99
5.3.1 只能通過鍵來查詢數據 100
5.3.2 鍵值數據庫不支持查詢位于某個范圍內的值 100
5.3.3 不支持像關系型數據庫所使用的那種SQL式標準查詢語言 101
5.4 適用于鍵值數據庫的設計模式 101
5.4.1 TTL鍵 102
5.4.2 模擬關系型數據庫的表格 103
5.4.3 聚合 104
5.4.4 原子聚合 105
5.4.5 可枚舉的鍵 106
5.4.6 索引 107
5.5 小結 108
5.6 案例研究:用鍵值數據庫管理移動應用程序的配置 108
5.7 復習題 110
5.8 引用資料 111
第三部分 文檔數據庫
第6章 文檔數據庫簡介 114
6.1 何謂文檔 115
6.1.1 文檔沒有那么簡單 115
6.1.2 文檔與鍵值對 118
6.1.3 以集合的形式來管理多份文檔 118
6.2 文檔數據庫無需定義顯式綱要 125
6.3 文檔數據庫的基本操作 127
6.3.1 向集合中插入文檔 128
6.3.2 從集合中刪除文檔 129
6.3.3 更新集合中的文檔 130
6.3.4 從集合中獲取文檔 131
6.4 小結 132
6.5 復習題 132
6.6 引用資料 133
第7章 文檔數據庫的術語 134
7.1 與文檔和集合有關的術語 135
7.1.1 文檔 135
7.1.2 集合 137
7.1.3 嵌入式文檔 137
7.1.4 無綱要的數據庫 138
7.1.5 多形的綱要 141
7.2 與分區類型有關的術語 141
7.2.1 垂直分區 142
7.2.2 水平分區或分片 143
7.3 與數據建模及查詢處理有關的術語 146
7.3.1 規范化 146
7.3.2 去規范化 148
7.3.3 查詢處理器 148
7.4 小結 149
7.5 復習題 149
7.6 引用資料 150
第8章 文檔數據庫的設計 151
8.1 在規范化與去規范化之間求得平衡 152
8.1.1 一對多關系 153
8.1.2 多對多關系 153
8.1.3 有時需要對多張表格執行join操作 154
8.1.4 在關系型數據庫中執行join操作的開銷可能會比較大 155
8.1.5 文檔數據庫的建模者應該怎樣做 157
8.2 應對可變的文檔 161
8.3 編制數量適中的索引 164
8.3.1 讀取操作相對較多的應用程序 164
8.3.2 寫入操作相對較多的應用程序 164
8.4 為常見的關系建模 166
8.4.1 文檔數據庫的一對多關系 166
8.4.2 文檔數據庫的多對多關系 166
8.4.3 為文檔數據庫中的層級關系建模 168
8.5 小結 169
8.6 案例研究:客戶的貨物清單 170
8.6.1 是否使用嵌入式文檔 171
8.6.2 選定所要編制的索引 172
8.6.3 是否需要把各類清單分別放在不同的集合中 172
8.7 復習題 172
8.8 引用資料 173
第四部分 列族數據庫
第9章 列族數據庫簡介 176
9.1 較早出現的列族數據庫:Google BigTable 177
9.1.1 動態地控制列族中的列 178
9.1.2 根據行ID、列名及時間戳來確定數據值 179
9.1.3 控制數據的存儲位置 179
9.1.4 同一行內的讀取和寫入行為都是原子操作 180
9.1.5 數據行之間按順序排列 180
9.2 列族數據庫與鍵值數據庫及文檔數據庫的異同 181
9.2.1 列族數據庫與鍵值數據庫的異同 182
9.2.2 列族數據庫與文檔數據庫的異同 182
9.2.3 列族數據庫與關系型數據庫的對比 183
9.3 列族數據庫所使用的架構 186
9.3.1 HBase數據庫采用由多種節點所組成的架構 186
9.3.2 Cassandra數據庫采用由對等節點所組成的架構 187
9.3.3 依照Gossip協議來傳播各服務器的狀態 188
9.3.4 用熱力學術語來談分布式數據庫為什么需要反熵 189
9.3.5 通過提示移交機制,替發生故障的節點保留與寫入請求有關的信息 190
9.4 列族數據庫的適用場合 192
9.5 小結 192
9.6 復習題 193
9.7 引用資料 193
第10章 列族數據庫的術語 194
10.1 列族數據庫的基本組件 195
10.1.1 鍵空間 195
10.1.2 行鍵 195
10.1.3 列 196
10.1.4 列族 196
10.2 實現列族數據庫所用的結構及相關流程 197
10.2.1 列族數據庫的內部結構及配置參數 198
10.2.2 分布式數據庫常用的術語:集群與分區 198
10.2.3 列族數據庫的其他底層組件 199
10.3 處理流程及協議 203
10.3.1 復制 203
10.3.2 反熵 203
10.3.3 Gossip協議 204
10.3.4 提示移交 205
10.4 小結 205
10.5 復習題 206
10.6 引用資料 206
第11章 列族數據庫的設計 207
11.1 與設計數據表格有關的建議 209
11.1.1 用去規范化來代替連接 209
11.1.2 善用無值的列 210
11.1.3 同時在列名和列值之中存儲數據 211
11.1.4 用一個數據行來為一個實體建模 211
11.1.5 設計行鍵時不要將大量操作分配給少數服務器 212
11.1.6 維護適當數量的列值版本 213
11.1.7 不要在列值中使用復雜的數據結構 213
11.2 與編制索引有關的建議 214
11.2.1 何時應該使用由列族數據庫系統自動管理的輔助索引 215
11.2.2 何時應該用表格來創建并管理輔助索引 217
11.3 應對大數據的工具 220
11.3.1 萃取、轉置并加載數據 220
11.3.2 分析大數據 221
11.3.3 監控大數據所用的工具 224
11.4 小結 224
11.5 案例研究:客戶數據分析 225
11.6 復習題 226
11.7 引用資料 227
第五部分 圖 數 據 庫
第12章 圖數據庫簡介 230
12.1 什么是圖 230
12.2 用圖對網絡關系進行建模 231
12.2.1 對地理位置進行建模 231
12.2.2 對傳染病進行建模 232
12.2.3 對抽象和具體的實體進行建模 233
12.2.4 對社交媒體進行建模 234
12.3 圖數據庫的優勢 235
12.3.1 圖數據庫不需要執行連接操作,因而可以更快地進行查詢 235
12.3.2 建模過程較為簡單 237
12.3.3 可以為實體之間的多種關系進行建模 237
12.4 小結 238
12.5 復習題 238
12.6 引用資料 238
第13章 圖數據庫的術語 239
13.1 圖的元素 240
13.1.1 頂點 240
13.1.2 邊 240
13.1.3 路徑 242
13.1.4 自環 242
13.2 圖的操作 242
13.2.1 圖的并集 243
13.2.2 圖的交集 243
13.2.3 圖的遍歷 243
13.3 圖和節點的屬性 244
13.3.1 同構性 244
13.3.2 階與尺寸 245
13.3.3 度數 245
13.3.4 接近中心性 245
13.3.5 中介性 246
13.4 圖的類型 246
13.4.1 無向圖和有向圖 247
13.4.2 流動網絡 247
13.4.3 二分圖 248
13.4.4 多重圖 248
13.4.5 加權圖 248
13.5 小結 249
13.6 復習題 249
13.7 引用資料 249
第14章 圖數據庫的設計 250
14.1 開始設計圖模型 250
14.1.1 設計一個描述社交網絡的圖數據庫 251
14.1.2 再次用查詢請求來引領模型設計 254
14.2 對圖進行查詢 255
14.2.1 Cypher:聲明式的查詢 256
14.2.2 Gremlin:通過遍歷圖模型來進行查詢 257
14.3 圖數據庫的設計技巧及注意事項 260
14.3.1 用索引來縮短獲取數據的時間 260
14.3.2 使用類型適當的邊 260
14.3.3 遍歷圖模型時要注意循環路徑 261
14.3.4 考慮圖數據庫的擴展問題 262
14.4 小結 263
14.5 案例研究:優化運輸路線 263
14.5.1 掌握用戶的需求 263
14.5.2 設計一套圖模型分析方案 263
14.6 復習題 264
14.7 引用資料 265
第六部分 選擇適合應用程序的數據庫
第15章 如何選擇數據庫 268
15.1 選擇NoSQL數據庫 269
15.1.1 何時應該使用鍵值數據庫 270
15.1.2 文檔數據庫的用例及適用場合 270
15.1.3 列族數據庫的用例及適用場合 271
15.1.4 圖數據庫的用例及適用場合 272
15.2 將NoSQL數據庫與關系型數據庫結合起來使用 273
15.3 小結 274
15.4 復習題 274
15.5 引用資料 274
第七部分 附  錄
附錄A 各章復習題的參考答案 278
附錄B NoSQL數據庫列表 298
術語表 303
序: