<內容簡介>
本書作者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
Reference demo_5
In stock 297 Items
Data sheet