Hadoop大數據開發(fā)基礎(第2版)(微課版)
定 價:59.8 元
當前圖書已被 14 所學校薦購過!
查看明細
- 作者:張軍,張良均
- 出版時間:2022/8/1
- ISBN:9787115575623
- 出 版 社:人民郵電出版社
- 中圖法分類:TP274
- 頁碼:0
- 紙張:
- 版次:02
- 開本:16開
本書以任務為導向,較為全面地介紹Hadoop大數據技術及其生態(tài)系統(tǒng)組件Hive、HBase的相關知識。全書共8章,具體內容包括Hadoop介紹、Hadoop集群的搭建及配置、Hadoop基礎操作、MapReduce入門編程、MapReduce進階編程、Hive數據倉庫、HBase分布式數據庫,以及一個項目案例(電影網站用戶影評分析)。本書的第2~7章包含實訓與課后習題,讀者可通過練習和操作實踐,鞏固所學的內容。
本書可用于“1+X”證書制度試點工作中的大數據應用開發(fā)(Python)職業(yè)技能等級證書(中級)的教學和培訓,也可以作為高校大數據技術相關專業(yè)的教材和大數據技術愛好者的自學用書。
1. 全書緊扣任務需求展開,不堆積知識點
2. 隨書附帶源碼,微課視頻,方便讀者系統(tǒng)學習并動手實踐
3. 實戰(zhàn)案例豐富
4. “1+X”大數據應用開發(fā)(Python)職業(yè)技能等級證書(中級)配套教材
張軍,副教授,主要研究領域為大數據技術與應用技術、高職教育教學改革,F任廣東科學技術職業(yè)學院計算機學院副院長,廣東省品牌專業(yè)(大數據技術)負責人,大數據省級教學團隊負責人,軟件技術中國特色高水平專業(yè)群建設項目、首批國家級職業(yè)教育教學創(chuàng)新團隊核心骨干成員,廣東省農村科技特派員,廣東科學技術職業(yè)學院專業(yè)領軍人才,兼任廣東省大數據產教融合協(xié)會副秘書長。
張良均,資深大數據專家,廣東泰迪智能科技股份有限公司董事長,國家科技部入庫技術專家,教育部全國專業(yè)學位水平評估專家,工信部教育與考試中心入庫專家,中國工業(yè)與應用數學學會理事,廣東省工業(yè)與應用數學學會副理事長,廣東省高等職業(yè)教育教學指導委員會委員,華南師范大學、中南財經政法大學等40余所高校校外碩導或兼職教授,泰迪杯全國數據挖掘挑戰(zhàn)賽發(fā)起人。曾在國內外重要學術刊物上發(fā)表學術論文10余篇,主導編寫圖書專著60余部,其中獲普通高等教育“十一五”規(guī)劃教材一部,“十三五”職業(yè)教育國家規(guī)劃教材一部;參與標準建設4項,主持國家級課題1項、省部級課題4項。獲得SAS、SPSS數據挖掘認證及Hadoop開發(fā)工程師證書,具有信訪、電力、電信、銀行、制造企業(yè)、電子商務和電子政務的項目經驗和行業(yè)背景,并榮獲中國產學研合作促進獎、中國南方電網公司發(fā)明專利一等獎、廣東省農業(yè)技術推廣二等獎、廣州市荔灣區(qū)科學技術進步獎。
第 1章 Hadoop介紹 1
任務1.1 認識Hadoop框架 1
1.1.1 什么是Hadoop 1
1.1.2 了解Hadoop的發(fā)展歷史 2
1.1.3 了解Hadoop的特點 4
任務1.2 了解Hadoop核心組件 4
1.2.1 了解分布式文件系統(tǒng)——HDFS 4
1.2.2 了解分布式計算框架——MapReduce 7
1.2.3 了解集群資源管理器——YARN 9
任務1.3 了解Hadoop生態(tài)系統(tǒng) 12
任務1.4 了解Hadoop應用場景 14
小結 15
課后習題 15
第 2章 Hadoop集群的搭建及配置 17
任務2.1 安裝及配置虛擬機 18
2.1.1 創(chuàng)建Linux虛擬機 18
2.1.2 設置固定IP地址 26
2.1.3 遠程連接虛擬機 29
2.1.4 配置本地YUM源及安裝常用軟件 31
任務2.2 搭建Hadoop完全分布式集群 35
2.2.1 在Linux下安裝Java 36
2.2.2 修改配置文件 37
2.2.3 克隆虛擬機 41
2.2.4 配置SSH免密碼登錄 44
2.2.5 配置時間同步服務 45
2.2.6 啟動和關閉Hadoop集群 46
2.2.7 監(jiān)控Hadoop集群 47
小結 49
實訓 50
實訓1 修改master虛擬機的IP地址 50
實訓2 編寫Shell腳本同步集群時間 50
課后習題 51
第3章 Hadoop基礎操作 53
任務3.1 認識Hadoop安全模式 54
3.1.1 了解Hadoop安全模式 54
3.1.2 查看、解除和開啟Hadoop安全模式 55
任務3.2 查看Hadoop集群的基本信息 56
3.2.1 查詢集群的存儲系統(tǒng)信息 57
3.2.2 查詢集群的計算資源信息 60
任務3.3 上傳文件到HDFS目錄 62
3.3.1 了解HDFS 62
3.3.2 HDFS的基本操作 65
3.3.3 任務實現 68
任務3.4 運行首個MapReduce任務 70
3.4.1 了解Hadoop官方的示例程序包 70
3.4.2 提交MapReduce任務給集群運行 70
任務3.5 管理多個MapReduce任務 74
3.5.1 查詢MapReduce任務 74
3.5.2 中斷MapReduce任務 76
小結 78
實訓 79
實訓1 統(tǒng)計文件中所有單詞長度的標準差 79
實訓2 查詢與中斷MapReduce任務 79
課后習題 80
第4章 MapReduce入門編程 82
任務4.1 在IntelliJ IDEA中搭建MapReduce開發(fā)環(huán)境 83
4.1.1 在Windows下安裝Java 83
4.1.2 下載與安裝IntelliJ IDEA 86
4.1.3 創(chuàng)建MapReduce工程 88
4.1.4 配置MapReduce環(huán)境 90
任務4.2 通過源碼初識MapReduce編程 92
4.2.1 了解MapReduce工作原理及核心組成 92
4.2.2 了解MapReduce實現詞頻統(tǒng)計的執(zhí)行流程 93
4.2.3 讀懂官方提供的WordCount源碼 94
任務4.3 統(tǒng)計網站每日的訪問次數 100
4.3.1 分析思路與處理邏輯 100
4.3.2 編寫核心模塊代碼 101
4.3.3 任務實現 102
任務4.4 將網站每日訪問次數根據訪問次數進行升序排序 104
4.4.1 分析思路與處理邏輯 104
4.4.2 編寫核心模塊代碼 105
4.4.3 任務實現 106
小結 108
實訓 109
實訓1 使用MapReduce編程統(tǒng)計某超市1月商品被購買的次數 109
實訓2 使用MapReduce編程統(tǒng)計各科目的平均成績 109
課后習題 110
第5章 MapReduce進階編程 113
任務5.1 篩選日志文件并生成序列化文件 113
5.1.1 設置MapReduce輸入格式 114
5.1.2 設置MapReduce輸出格式 115
5.1.3 任務實現 116
任務5.2 使用Hadoop Java API讀取序列化文件 118
5.2.1 使用FileSystem API管理文件夾 118
5.2.2 使用FileSystem API操作文件 122
5.2.3 使用FileSystem API讀/寫數據 124
5.2.4 任務實現 126
任務5.3 優(yōu)化日志文件統(tǒng)計程序 128
5.3.1 自定義鍵值類型 128
5.3.2 初步探索Combiner 132
5.3.3 淺析Partitioner 134
5.3.4 自定義計數器 137
5.3.5 任務實現 139
任務5.4 在IntelliJ IDEA中打包并提交MapReduce程序 142
5.4.1 傳遞參數 142
5.4.2 使用Hadoop輔助類ToolRunner 144
5.4.3 自動打包并提交MapReduce任務 145
5.4.4 任務實現 148
小結 150
實訓 150
實訓1 使用MapReduce編程統(tǒng)計各科目成績最高的學生 150
實訓2 使用MapReduce編程篩選出指定出版年份的圖書 151
課后習題 152
第6章 Hive數據倉庫 155
任務6.1 認識Hive數據倉庫 156
6.1.1 什么是Hive 156
6.1.2 了解Hive與傳統(tǒng)數據庫的對比 156
6.1.3 了解Hive系統(tǒng)架構 158
6.1.4 了解Hive數據模型 159
6.1.5 了解Hive執(zhí)行流程 159
任務6.2 訪問Hive的3種方式 160
6.2.1 設置內嵌模式 160
6.2.2 設置直連數據庫模式 162
6.2.3 設置遠程模式 165
任務6.3 實現Hive表的創(chuàng)建與修改 167
6.3.1 了解Hive數據定義語言的基本語法 168
6.3.2 創(chuàng)建表基本操作 171
6.3.3 修改表基本操作 174
任務6.4 實現Hive表中數據的增刪查改 175
6.4.1 了解Hive數據操作語言的基本語法 175
6.4.2 向數據表中裝載文件 177
6.4.3 查詢數據 179
6.4.4 插入數據 182
6.4.5 刪除表中數據 183
任務6.5 掉話率Top20基站統(tǒng)計 184
6.5.1 分析基本思路 184
6.5.2 任務實現 184
小結 186
實訓 186
實訓1 查詢圖書館圖書的被借閱次數及讀者借閱圖書的次數 186
實訓2 Hive實現表的連接及信息查詢處理 187
課后習題 188
第7章 HBase分布式數據庫 190
任務7.1 認識HBase分布式數據庫 191
7.1.1 什么是HBase 191
7.1.2 了解HBase系統(tǒng)架構 193
7.1.3 了解HBase數據模型 195
7.1.4 了解HBase讀/寫流程 196
任務7.2 安裝部署HBase集群 198
7.2.1 了解并安裝ZooKeeper 198
7.2.2 安裝及配置HBase集群 203
任務7.3 掌握HBase常用的Shell命令 206
7.3.1 修改與刪除表 208
7.3.2 查詢表數據 210
任務7.4 使用HBase Java API實現表設計 212
7.4.1 創(chuàng)建Java項目 213
7.4.2 實現表的創(chuàng)建 215
7.4.3 向表中插入數據 216
任務7.5 查詢分析通話記錄數據 217
7.5.1 設計表并分析查詢需求 217
7.5.2 任務實現 218
小結 225
實訓 225
實訓1 使用HBase Shell命令創(chuàng)建學生表并插入數據 225
實訓2 使用HBase Java API對HBase數據庫的表進行操作 226
課后習題 227
第8章 項目案例:電影網站用戶影評分析 228
任務8.1 了解數據字段并分析需求 228
8.1.1 了解數據字段 228
8.1.2 統(tǒng)計分析需求描述 230
任務8.2 多維度分析用戶影評 230
8.2.1 創(chuàng)建并配置工程項目 230
8.2.2 計算評分次數最多的10部電影及評分次數并分析 232
8.2.3 計算不同性別評分最高的10部電影及評分并分析 240
8.2.4 計算指定電影各年齡段的平均影評并分析 250
8.2.5 計算影評庫中各種類型電影中評分最高的5部電影并分析 252
小結 258
附錄A Linux常用操作命令 259
附錄B Hadoop集群組件的常用端口及其說明 263