Hadoop應(yīng)用開發(fā)基礎(chǔ)
定 價:46.8 元
- 作者:劉雯 王文兵
- 出版時間:2019/1/1
- ISBN:9787115498137
- 出 版 社:人民郵電出版社
- 中圖法分類:TP274
- 頁碼:233
- 紙張:
- 版次:01
- 開本:16開
Hadoop是一個分布式系統(tǒng)的基礎(chǔ)架構(gòu),支持對大量數(shù)據(jù)進(jìn)行分布式處理,能以高效、可靠的方式完成數(shù)據(jù)處理。本書圍繞Hadoop生態(tài)圈技術(shù)進(jìn)行講解,主要包括Hadoop環(huán)境配置、Hadoop分布式文件系統(tǒng)(HDFS)、Hadoop分布式計算框架MapReduce、Hadoop資源調(diào)度框架YARN與Hadoop新特性、Hadoop分布式數(shù)據(jù)庫HBase、Oozie工作流調(diào)度系統(tǒng)等內(nèi)容。
本書以Linux操作系統(tǒng)為平臺,緊密結(jié)合實(shí)際應(yīng)用,貫穿了大量實(shí)踐案例。另外,本書配以多元的學(xué)習(xí)資源和平臺服務(wù),包括參考教案、案例素材下載、學(xué)習(xí)交流社區(qū)等,為讀者提供全方位的學(xué)習(xí)體驗。通過系統(tǒng)地學(xué)習(xí)本書內(nèi)容和操作實(shí)踐,讀者可以掌握大數(shù)據(jù)相關(guān)技能。
本書適合作為高等學(xué)校計算機(jī)專業(yè)大數(shù)據(jù)等相關(guān)課程的教材使用,也適合具有一定Linux、Java開發(fā)經(jīng)驗且想從事大數(shù)據(jù)開發(fā)工作的人員自學(xué)使用,還適合作為大數(shù)據(jù)分析與運(yùn)維人員的參考用書。
1、選取知識點(diǎn)核心實(shí)用,以互聯(lián)網(wǎng)+實(shí)現(xiàn)終身學(xué)習(xí)
2、以企業(yè)需求為設(shè)計導(dǎo)向,以任務(wù)驅(qū)動為講解方式
3、以案例為主線組織知識點(diǎn),以實(shí)戰(zhàn)項目來提升技術(shù)
4、充分考慮學(xué)習(xí)者的認(rèn)知曲線,由淺入深,邊講邊練
劉雯,任教于北京郵電大學(xué)電子工程學(xué)院,主要研究方向為室內(nèi)外高精度定位技術(shù)及位置服務(wù)。主持國家重點(diǎn)研發(fā)計劃課題和國家國家自然科學(xué)基金面上項目各1項,主持完成國家863課題1項;獲得國家科技發(fā)明二等獎和國家科技進(jìn)步二等獎各1項,教育部、中國電子學(xué)會、中國通信學(xué)會等省部級獎勵7項指導(dǎo)學(xué)生參加全國研究生電子設(shè)計大賽賽獲得初賽一等獎;在國際期刊及相關(guān)專業(yè)國際會議發(fā)表學(xué)術(shù)論文30余篇。
第 1章 Hadoop入門 1
任務(wù)1 了解大數(shù)據(jù)現(xiàn)狀 2
1.1.1 大數(shù)據(jù)基本概念和特征 2
1.1.2 大數(shù)據(jù)帶來的機(jī)遇和挑戰(zhàn) 3
任務(wù)2 了解Hadoop基礎(chǔ) 4
1.2.1 Hadoop概述 4
1.2.2 Hadoop生態(tài)圈 7
1.2.3 Hadoop應(yīng)用案例 9
任務(wù)3 搭建移動通信業(yè)務(wù)的Hadoop處理平臺 11
1.3.1 安裝虛擬機(jī) 11
1.3.2 安裝Linux操作系統(tǒng) 13
1.3.3 搭建移動通信業(yè)務(wù)的Hadoop處理平臺 25
1.3.4 大數(shù)據(jù)集群管理平臺 28
1.3.5 技能實(shí)訓(xùn) 29
本章總結(jié) 29
本章作業(yè) 29
第 2章 Hadoop分布式文件系統(tǒng)HDFS 31
任務(wù)1 了解HDFS 32
2.1.1 認(rèn)識HDFS 32
2.1.2 HDFS架構(gòu) 34
任務(wù)2 使用HDFS處理移動通信數(shù)據(jù)文件 35
2.2.1 使用HDFS shell操作完成移動通信數(shù)據(jù)的管理 35
2.2.2 使用Java API操作完成移動通信數(shù)據(jù)的管理 38
2.2.3 技能實(shí)訓(xùn) 43
任務(wù)3 了解HDFS運(yùn)行原理 43
2.3.1 HDFS讀寫流程 43
2.3.2 HDFS副本機(jī)制 45
2.3.3 HDFS負(fù)載均衡 46
2.3.4 HDFS機(jī)架感知 46
任務(wù)4 實(shí)現(xiàn)移動通信數(shù)據(jù)的行文件方式存儲 47
2.4.1 Hadoop序列化機(jī)制 47
2.4.2 文件格式 51
2.4.3 技能實(shí)訓(xùn) 56
本章總結(jié) 56
本章作業(yè) 56
第3章 Hadoop分布式計算框架MapReduce 57
任務(wù)1 使用MapReduce完成詞頻統(tǒng)計功能 58
3.1.1 MapReduce基礎(chǔ) 58
3.1.2 MapReduce編程模型 59
3.1.3 MapReduce詞頻統(tǒng)計編程實(shí)例 60
3.1.4 技能實(shí)訓(xùn) 64
任務(wù)2 按號段統(tǒng)計手機(jī)號碼 65
3.2.1 MapReduce輸入/輸出格式 65
3.2.2 Combiner類 67
3.2.3 Partitioner類 69
3.2.4 Shuffle階段 72
3.2.5 自定義RecordReader 73
3.2.6 技能實(shí)訓(xùn) 77
任務(wù)3 使用MapReduce編寫應(yīng)用案例 77
3.3.1 使用MapReduce實(shí)現(xiàn)join操作 78
3.3.2 使用MapReduce實(shí)現(xiàn)排序功能 84
3.3.3 使用MapReduce實(shí)現(xiàn)二次排序功能 86
3.3.4 技能實(shí)訓(xùn) 91
本章總結(jié) 91
本章作業(yè) 91
第4章 Hadoop YARN 93
任務(wù)1 在YARN集群上運(yùn)行MapReduce作業(yè) 94
4.1.1 YARN的產(chǎn)生背景 94
4.1.2 YARN簡介 95
4.1.3 YARN架構(gòu)設(shè)計 101
4.1.4 技能實(shí)訓(xùn) 103
任務(wù)2 配置YARN容錯 104
4.2.1 ResourceManager自動重啟 104
4.2.2 ResourceManager高可用 105
本章總結(jié) 108
本章作業(yè) 108
第5章 ZooKeeper簡介及安裝 109
任務(wù)1 了解ZooKeeper 110
5.1.1 ZooKeeper概念 110
5.1.2 ZooKeeper的作用及優(yōu)勢 111
5.1.3 ZooKeeper架構(gòu) 111
5.1.4 ZooKeeper的應(yīng)用案例 113
任務(wù)2 搭建ZooKeeper單機(jī)環(huán)境 114
5.2.1 ZooKeeper下載安裝 114
5.2.2 ZooKeeper配置 114
5.2.3 啟動ZooKeeper 115
5.2.4 技能實(shí)訓(xùn) 115
任務(wù)3 實(shí)現(xiàn)分布式系統(tǒng)服務(wù)器上下線的動態(tài)感知 116
5.3.1 ZooKeeper Client命令行操作 116
5.3.2 Java API操作ZooKeeper 119
5.3.3 技能實(shí)訓(xùn) 129
本章總結(jié) 130
本章作業(yè) 130
第6章 HBase基礎(chǔ) 131
任務(wù)1 了解HBase 132
6.1.1 HBase是什么 132
6.1.2 HBase發(fā)展歷史 133
6.1.3 HBase使用案例 133
任務(wù)2 理解HBase體系架構(gòu) 134
6.2.1 架構(gòu)簡介 134
6.2.2 HMaster 135
6.2.3 HRegion 135
6.2.4 HRegionServer 136
6.2.5 ZooKeeper 136
任務(wù)3 理解HBase數(shù)據(jù)模型 136
6.3.1 數(shù)據(jù)模型 137
6.3.2 概念視圖 137
6.3.3 物理視圖 139
任務(wù)4 搭建HBase環(huán)境 140
6.4.1 HBase安裝包下載 140
6.4.2 HBase解壓安裝 141
6.4.3 HBase偽分布式環(huán)境搭建 141
6.4.4 技能實(shí)訓(xùn) 145
本章總結(jié) 145
本章作業(yè) 146
第7章 HBase操作 147
任務(wù)1 使用HBase Shell完成《王者榮耀》游戲玩家信息管理操作 148
7.1.1 DDL操作 148
7.1.2 DML操作 154
7.1.3 技能實(shí)訓(xùn) 159
任務(wù)2 使用HBase Java API完成《王者榮耀》游戲玩家信息管理操作 159
7.2.1 開發(fā)環(huán)境搭建 159
7.2.2 核心API 163
7.2.3 技能實(shí)訓(xùn) 170
任務(wù)3 使用HBase Rest API訪問《王者榮耀》游戲玩家信息表 170
7.3.1 啟動/停止Rest服務(wù)命令 170
7.3.2 訪問方式 171
7.3.3 技能實(shí)訓(xùn) 172
本章總結(jié) 172
本章作業(yè) 172
第8章 HBase應(yīng)用 173
任務(wù)1 使用表空間管理《王者榮耀》游戲玩家信息表 174
8.1.1 HBase名字空間簡介 174
8.1.2 名字空間操作 174
8.1.3 技能訓(xùn)練 182
任務(wù)2 對《王者榮耀》游戲玩家信息表進(jìn)行權(quán)限管理 182
8.2.1 授予權(quán)限GRANT 182
8.2.2 查看權(quán)限USER_PERMISSION 184
8.2.3 收回權(quán)限REVOKE 184
8.2.4 技能實(shí)訓(xùn) 185
任務(wù)3 理解HRegion切分 185
8.3.1 HRegion切分概念 185
8.3.2 切分策略 185
任務(wù)4 了解HBase中的Compaction過程 186
8.4.1 Compaction概念 187
8.4.2 Compaction實(shí)現(xiàn)方式 187
8.4.3 Compaction參數(shù) 187
本章總結(jié) 188
本章作業(yè) 188
第9章 工作流調(diào)度框架Oozie 189
任務(wù)1 理解Apache Oozie架構(gòu) 190
9.1.1 Oozie簡介 190
9.1.2 Oozie架構(gòu) 190
任務(wù)2 搭建Oozie環(huán)境 194
9.2.1 Oozie下載安裝 194
9.2.2 Oozie配置 195
9.2.3 Oozie啟動 198
9.2.4 技能實(shí)訓(xùn) 198
任務(wù)3 實(shí)現(xiàn)游戲玩家搜索功能 198
9.3.1 Shell Action 199
9.3.2 Java Action 201
9.3.3 MapReduce Action 203
9.3.4 實(shí)現(xiàn)游戲玩家搜索功能 205
9.3.5 技能實(shí)訓(xùn) 210
本章總結(jié) 210
本章作業(yè) 210
第 10章 項目實(shí)訓(xùn)——《王者榮耀》游戲英雄排行榜 211
10.1 項目需求 212
10.2 項目環(huán)境準(zhǔn)備 213
10.3 項目覆蓋的技能點(diǎn) 213
10.4 難點(diǎn)分析 214
10.5 項目實(shí)現(xiàn)思路 219
本章總結(jié) 233
本章作業(yè) 233