定 價:¥49.00
作 者: | 小牛學(xué)堂 |
出版社: | 電子工業(yè)出版社 |
叢編項: | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787121365393 | 出版時間: | 2019-05-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 248 | 字?jǐn)?shù): |
目 錄
第1章 Hadoop簡介 1
1.1 Hadoop相關(guān)介紹 1
1.1.1 Hadoop概述 1
1.1.2 Hadoop的歷史 1
1.1.3 Hadoop的功能與作用 1
1.1.4 Hadoop的優(yōu)勢 2
1.1.5 Hadoop的應(yīng)用現(xiàn)狀與趨勢 2
1.2 Hadoop的項目 2
1.3 Hadoop的體系結(jié)構(gòu) 4
1.4 Hadoop與分布式開發(fā) 5
1.5 Hadoop計算模型 8
1.6 Hadoop的數(shù)據(jù)管理 8
1.6.1 HDFS的數(shù)據(jù)管理 8
1.6.2 HBase的數(shù)據(jù)管理 10
1.6.3 Hive的數(shù)據(jù)管理 11
1.7 Hadoop集群安全策略 12
思考練習(xí) 14
第2章 Hadoop的安裝與配置 15
2.1 在Linux上安裝與配置Hadoop 15
2.1.1 安裝JDK1.6 15
2.1.2 配置SSH免密碼登錄 16
2.1.3 安裝并運(yùn)行Hadoop 17
2.2 在Mac OSX上安裝與配置Hadoop 19
2.2.1 安裝Homebrew 19
2.2.2 使用Homebrew安裝Hadoop 19
2.2.3 配置SSH和使用Hadoop 19
2.3 在Windows上安裝與配置Hadoop 19
2.3.1 安裝JDK1.6或更高版本 19
2.3.2 安裝Cygwin 20
2.3.3 配置環(huán)境變量 20
2.3.4 安裝sshd服務(wù) 20
2.3.5 啟動sshd服務(wù) 20
2.3.6 配置SSH免密碼登錄 20
2.3.7 安裝并運(yùn)行Hadoop 21
2.4 安裝與配置Hadoop集群 21
2.4.1 網(wǎng)絡(luò)拓?fù)?21
2.4.2 定義集群拓?fù)?22
2.4.3 建立和安裝Cluster 22
2.5 日志分析及幾個小技巧 28
思考練習(xí) 29
第3章 HDFS HA及解決方案 30
3.1 HDFS系統(tǒng)架構(gòu) 30
3.2 HA定義 31
3.3 HDFS HA原因分析及應(yīng)對措施 31
3.3.1 可靠性 31
3.3.2 可維護(hù)性 32
3.4 Hadoop的HA解決方案 32
3.4.1 Hadoop的元數(shù)據(jù)備份方案 32
3.4.2 Hadoop的SecondaryNameNode方案 33
3.4.3 Hadoop的CheckpointNode方案 33
3.4.4 Hadoop的BackupNode方案 34
3.4.5 DRDB方案 34
3.4.6 Facebook的AvatarNode方案 34
3.5 方案的優(yōu)點與缺點比較 35
思考練習(xí) 36
第4章 HDFS元數(shù)據(jù)解析 37
4.1 概述 37
4.2 內(nèi)存元數(shù)據(jù)結(jié)構(gòu) 37
4.2.1 INode 37
4.2.2 Block 38
4.2.3 BlockInfo和DatanodeDescriptor 39
4.2.4 小結(jié) 39
4.2.5 代碼分析―元數(shù)據(jù)結(jié)構(gòu) 39
4.3 磁盤元數(shù)據(jù)文件 43
4.4 format情景分析 45
4.5 元數(shù)據(jù)應(yīng)用場景分析 56
思考練習(xí) 57
第5章 Hadoop的元數(shù)據(jù)備份方案 58
5.1 運(yùn)行機(jī)制分析 58
5.1.1 NameNode啟動加載元數(shù)據(jù)情景分析 59
5.1.2 元數(shù)據(jù)更新及日志寫入情景分析 67
5.1.3 Checkpoint過程情景分析 73
5.1.4 元數(shù)據(jù)可靠性機(jī)制 95
5.2 使用說明 95
思考練習(xí) 96
第6章 Hadoop的BackupNode方案 97
6.1 BackupNode概述 97
6.1.1 系統(tǒng)架構(gòu) 97
6.1.2 使用原則 97
6.2 運(yùn)行機(jī)制分析 98
6.2.1 運(yùn)行機(jī)制 98
6.2.2 元數(shù)據(jù)操作情景分析 113
6.2.3 日志池機(jī)制 119
6.2.4 故障切換機(jī)制 122
6.3 實驗方案說明 124
6.4 構(gòu)建實驗環(huán)境 124
6.4.1 網(wǎng)絡(luò)拓?fù)?124
6.4.2 系統(tǒng)安裝及配置 124
6.4.3 安裝JDK 131
6.4.4 虛擬機(jī)集群架設(shè) 132
6.4.5 NameNode安裝及配置 133
6.4.6 BackupNode安裝及配置 133
6.4.7 DataNode安裝及配置 134
6.4.8 Clients安裝及配置 134
6.5 異常解決方案 134
6.5.1 異常情況分析 134
6.5.2 NameNode配置 134
6.5.3 BackupNode配置 139
6.5.4 DataNode 配置 141
6.5.5 NameNode 宕機(jī)切換實驗 143
6.5.6 NameNode 宕機(jī)讀/寫測試 148
思考練習(xí) 153
第7章 MapReduce設(shè)計理念與基本架構(gòu) 154
7.1 Hadoop MapReduce設(shè)計目標(biāo) 154
7.2 MapReduce編程模型概述 154
7.2.1 MapReduce編程模型簡介 154
7.2.2 MapReduce編程實例 156
7.3 Hadoop基本架構(gòu) 157
7.3.1 HDFS架構(gòu) 158
7.3.2 Hadoop MapReduce架構(gòu) 159
7.4 Hadoop MapReduce作業(yè)的生命周期 160
思考練習(xí) 162
第8章 MapReduce編程模型 163
8.1 MapReduce編程模型概述 163
8.1.1 MapReduce編程接口體系結(jié)構(gòu) 163
8.1.2 新版與舊版MapReduce API比較 164
8.2 MapReduce API基本概念 165
8.2.1 序列化 165
8.2.2 Reporter參數(shù) 166
8.2.3 回調(diào)機(jī)制 166
8.3 Java API解析 167
8.3.1 作業(yè)配置與提交 167
8.3.2 InputFormat接口的設(shè)計與實現(xiàn) 170
8.3.3 OutputFormat接口的設(shè)計與實現(xiàn) 174
8.3.4 Mapper與Reducer解析 177
8.3.5 Partitioner接口的設(shè)計與實現(xiàn) 180
8.4 非Java API解析 181
8.4.1 Hadoop Streaming的實現(xiàn)原理 181
8.4.2 Hadoop Pipes的實現(xiàn)原理 184
8.5 Hadoop工作流 187
8.5.1 JobControl的實現(xiàn)原理 187
8.5.2 ChainMapper/ChainReducer的實現(xiàn)原理 189
8.5.3 Hadoop工作流引擎 191
思考練習(xí) 192
第9章 YARN設(shè)計理念與基本架構(gòu) 193
9.1 YARN產(chǎn)生背景 193
9.1.1 MRv1的局限性 193
9.1.2 輕量級彈性計算平臺 194
9.2 Hadoop基礎(chǔ)知識 195
9.2.1 術(shù)語解釋 195
9.2.2 Hadoop的版本變遷 196
9.3 YARN基本設(shè)計思想 198
9.3.1 基本框架對比 198
9.3.2 編程模型對比 200
9.4 YARN基本架構(gòu) 200
9.4.1 YARN基本組成結(jié)構(gòu) 200
9.4.2 YARN通信協(xié)議 202
9.5 YARN工作流程 203
9.6 多角度理解YARN 204
9.6.1 并行編程 204
9.6.2 資源管理系統(tǒng) 204
9.6.3 云計算 204
思考練習(xí) 205
第10章 YARN基礎(chǔ)庫 206
10.1 YARN基礎(chǔ)庫概述 206
10.2 第三方開源庫 206
10.2.1 Protocol Buffers 206
10.2.2 Apache Avro 209
10.3 底層通信庫 211
10.3.1 RPC通信模型 212
10.3.2 Hadoop RPC的特點概述 213
10.3.3 RPC總體架構(gòu) 213
10.3.4 Hadoop RPC使用方法 214
10.3.5 Hadoop RPC類詳解 215
10.3.6 Hadoop RPC參數(shù)調(diào)優(yōu) 219
10.3.7 YARN RPC實現(xiàn) 219
10.3.8 YARN RPC應(yīng)用實例 221
10.4 服務(wù)庫與事件庫 225
10.4.1 服務(wù)庫 225
10.4.2 事件庫 226
10.4.3 YARN服務(wù)庫和事件庫的使用方法 226
10.4.4 事件驅(qū)動帶來的變化 229
10.5 狀態(tài)機(jī)庫 230
10.5.1 YARN狀態(tài)轉(zhuǎn)換方式 230
10.5.2 狀態(tài)機(jī)類 230
10.5.3 狀態(tài)機(jī)的使用方法 230
10.5.4 狀態(tài)機(jī)可視化 233
10.6 源代碼閱讀引導(dǎo) 233
思考練習(xí) 234
參考文獻(xiàn) 235