前言
第1章 分布式數據庫系統(tǒng)概論 1
1.1 引言及準備知識 1
1.1.1 基本概念 1
1.1.2 基礎知識 4
1.2 分布式數據庫系統(tǒng)的基本概念 5
1.2.1 節(jié)點/場地 5
1.2.2 分布式數據庫 5
1.2.3 分布式數據庫管理系統(tǒng) 6
1.2.4 分布式數據庫系統(tǒng)應用
舉例 6
1.2.5 分布式數據庫的特性 7
1.3 分布式數據庫系統(tǒng)的作用和特點 9
1.3.1 作用 9
1.3.2 特點 9
1.4 分布式數據庫系統(tǒng)中的關鍵
技術 10
1.4.1 關鍵技術 10
1.4.2 典型的分布式數據庫原型
系統(tǒng)簡介 11
1.5 大數據應用與分布式大數據庫
技術 12
1.5.1 大數據的類型和應用 12
1.5.2 大數據的特點 15
1.5.3 大數據處理過程 15
1.5.4 大數據管理新模式 16
1.5.5 分布式大數據庫系統(tǒng)及
關鍵技術 18
1.6 本章小結 21
習題 21
參考文獻 22
第2章 分布式數據庫系統(tǒng)的
體系結構 25
2.1 DDBS的物理結構和邏輯結構 26
2.2 DDBS的體系結構 26
2.2.1 基于客戶/服務器結構的
體系結構 27
2.2.2 基于“中間件”的客戶/
服務器結構 28
2.3 DDBS的模式結構 30
2.4 DDBS的組件結構 32
2.5 多數據庫集成系統(tǒng) 33
2.5.1 數據庫集成 33
2.5.2 多數據庫系統(tǒng) 35
2.6 DDBS的分類 38
2.6.1 三個基本特性 38
2.6.2 DDBS的分類圖 39
2.7 元數據的管理 40
2.7.1 數據字典的主要內容和
用途 40
2.7.2 數據字典的組織 40
2.8 Oracle系統(tǒng)體系結構介紹 41
2.8.1 Oracle系統(tǒng)體系結構 41
2.8.2 Oracle中實現分布式功能的
組件 42
2.8.3 Oracle分布式數據庫架構
案例 44
2.9 分布式大數據庫的系統(tǒng)體系
結構 46
2.10 分布式大數據庫系統(tǒng)案例 47
2.10.1 HBase 47
2.10.2 Spanner 49
2.10.3 OceanBase 51
2.11 本章小結 53
習題 53
參考文獻 53
第3章 分布式數據庫的設計 56
3.1 設計策略 56
3.1.1 Top-Down設計過程 56
3.1.2 Bottom-Up設計過程 57
3.2 分片的定義和作用 57
3.2.1 分片的定義 58
3.2.2 分片的作用 58
3.2.3 分片設計過程 59
3.2.4 分片的原則 59
3.2.5 分片的種類 60
3.2.6 分布透明性 60
3.3 水平分片的設計 60
3.3.1 定義 60
3.3.2 水平分片的操作 63
3.3.3 水平分片的設計 63
3.3.4 正確性檢驗 65
3.4 垂直分片的設計 66
3.4.1 定義 66
3.4.2 垂直分片的操作 67
3.4.3 垂直分片的設計 67
3.4.4 正確性檢驗 67
3.5 混合分片的設計 68
3.6 分片的表示方法 69
3.6.1 圖形表示法 69
3.6.2 分片樹表示方法 69
3.7 分配設計 70
3.7.1 分配類型 70
3.7.2 分配設計原則 72
3.7.3 分配模型 73
3.8 數據復制技術 74
3.8.1 數據復制的優(yōu)勢 74
3.8.2 數據復制的分類 75
3.8.3 復制的常用方法 75
3.9 Oracle數據庫的數據分布設計
案例 76
3.9.1 基于Oracle數據庫鏈的
數據分布設計 76
3.9.2 Oracle集中式數據庫的
數據分區(qū)技術 80
3.9.3 基于Oracle分片技術的
分布式數據庫案例 82
3.10 大數據庫的分布設計 86
3.10.1 大數據模型 86
3.10.2 數據分區(qū)策略 93
3.11 典型的大數據分布設計案例 97
3.11.1 HBase 97
3.11.2 Spanner 102
3.11.3 OceanBase 105
3.12 本章小結 110
習題 110
參考文獻 111
第4章 分布式數據存儲 114
4.1 大數據分布式存儲類型 114
4.2 分布式文件系統(tǒng) 116
4.2.1 HDFS簡介 116
4.2.2 HDFS的關系數據存儲
結構 119
4.2.3 基本的SSTable數據存儲
結構 125
4.2.4 LSM-Tree存儲結構 127
4.3 分布式對象存儲技術 130
4.3.1 三種主流的網絡存儲
結構 131
4.3.2 對象存儲系統(tǒng)的體系
結構 131
4.3.3 Ceph 134
4.3.4 Swift 137
4.3.5 主流分布式存儲技術的
比較 141
4.4 分布式索引結構 142
4.4.1 布隆過濾器 142
4.4.2 鍵值二級索引 145
4.4.3 跳躍表 148
4.4.4 分區(qū)數據上的索引結構 149
4.5 分布式緩存 151
4.5.1 分布式緩存概述 152
4.5.2 分布式緩存的體系結構 153
4.5.3 典型的分布式緩存系統(tǒng) 154
4.5.4 分布式緩存與存儲引擎的
結合使用 160
4.6 Oracle數據庫的存儲結構 161