定 價:59.8 元
叢書名:大數(shù)據(jù)技術(shù)精品系列教材
- 作者:何煌,張良均
- 出版時間:2024/3/1
- ISBN:9787115637963
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.13
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:128開
本書以廣電大數(shù)據(jù)案例為主線,系統(tǒng)介紹數(shù)據(jù)倉庫Hive存儲和初步處理方法的相關(guān)知識。本書條理清楚、重點突出,內(nèi)容循序漸進、由淺入深。本書共8章,包括廣電大數(shù)據(jù)用戶畫像需求分析、部署開發(fā)環(huán)境、廣電用戶數(shù)據(jù)存儲、廣電用戶基本數(shù)據(jù)簡單查詢、廣電用戶賬單與訂單數(shù)據(jù)查詢進階、廣電用戶收視行為數(shù)據(jù)查詢優(yōu)化、廣電用戶數(shù)據(jù)清洗及數(shù)據(jù)導(dǎo)出,以及廣電用戶數(shù)據(jù)存儲與處理的程序開發(fā)。本書大部分章包含實訓(xùn)和課后習(xí)題,通過練習(xí)和操作實踐,幫助讀者鞏固所學(xué)的內(nèi)容。
本書可以作為高等院校數(shù)據(jù)科學(xué)或大數(shù)據(jù)相關(guān)專業(yè)的教材,也可以作為大數(shù)據(jù)愛好者的自學(xué)用書。
將理論與實踐結(jié)合。本書以知識點和廣電大數(shù)據(jù)案例為主線,介紹在大數(shù)據(jù)技術(shù)中Hive的主要用法。
以任務(wù)為導(dǎo)向。本書從知識點到實操,再到具體的項目,讓讀者明白如何利用所學(xué)知識來解決問題,通過實訓(xùn)和課后習(xí)題幫助讀者鞏固所學(xué)知識,從而使讀者真正理解并應(yīng)用所學(xué)知識。
注重啟發(fā)式教學(xué)。本書內(nèi)容圍繞利用Hive處理大數(shù)據(jù)的流程展開,不堆砌知識點,著重于思路的啟發(fā)與解決方案的實施。通過對從任務(wù)需求到實現(xiàn)這一完整工作流程的體驗,讀者將真正理解并掌握Hive大數(shù)據(jù)存儲和處理技術(shù)。
何煌,華中科技大學(xué)院軟件工程碩士,“雙師型”專業(yè)講師,PMP項目管理師,大數(shù)據(jù)高級分析師。曾在企業(yè)從事多年系統(tǒng)研發(fā)工作,目前在廣東創(chuàng)新科技職業(yè)學(xué)院信工學(xué)院擔任軟件教研室主任,負責軟件和大數(shù)據(jù)專業(yè)教學(xué)研究工作。先后主編《計算機應(yīng)用基礎(chǔ)》、《Java程序設(shè)計教程》《創(chuàng)新創(chuàng)業(yè)基礎(chǔ)教程》、《計算機應(yīng)用基礎(chǔ)實用教程》、《信息技術(shù)基礎(chǔ)》等多本教材編撰工作。
第 1章 廣電大數(shù)據(jù)用戶畫像需求分析 1
任務(wù)1.1 需求分析與架構(gòu) 3
1.1.1 業(yè)務(wù)需求分析 3
1.1.2 大數(shù)據(jù)存儲技術(shù)架構(gòu) 4
任務(wù)1.2 認識Hive 7
1.2.1 Hive簡介 8
1.2.2 Hive的架構(gòu) 8
1.2.3 Hive設(shè)計特性 10
小結(jié) 12
課后習(xí)題 13
第 2章 部署開發(fā)環(huán)境 14
任務(wù)2.1 安裝部署Hadoop集群 15
2.1.1 VMware虛擬機安裝和網(wǎng)絡(luò)設(shè)置 15
2.1.2 部署CentOS 19
2.1.3 Hadoop集群部署前準備 33
2.1.4 Hadoop集群部署 37
任務(wù)2.2 安裝部署Hive 51
2.2.1 安裝配置MySQL 52
2.2.2 安裝配置Hive 52
任務(wù)2.3 使用Hive CLI 56
2.3.1 啟動Hive CLI 56
2.3.2 在Hive中執(zhí)行Bash Shell和Hadoop dfs命令 57
2.3.3 在Shell中執(zhí)行Hive查詢 58
小結(jié) 59
課后習(xí)題 59
第3章 廣電用戶數(shù)據(jù)存儲 62
任務(wù)3.1 創(chuàng)建業(yè)務(wù)數(shù)據(jù)表 63
3.1.1 操作Hive數(shù)據(jù)庫 63
3.1.2 了解Hive數(shù)據(jù)類型 66
3.1.3 創(chuàng)建與管理Hive表 68
3.1.4 任務(wù)實現(xiàn) 78
任務(wù)3.2 將數(shù)據(jù)導(dǎo)入Hive表中 84
3.2.1 裝載數(shù)據(jù)至Hive表中 85
3.2.2 任務(wù)實現(xiàn) 86
小結(jié) 87
實訓(xùn) 創(chuàng)建輪船乘客表并導(dǎo)入數(shù)據(jù)至表中 88
課后習(xí)題 89
第4章 廣電用戶基本數(shù)據(jù)簡單查詢 91
任務(wù)4.1 查詢廣電用戶的用戶編號及開戶時間 92
4.1.1 SELECT語句 93
4.1.2 任務(wù)實現(xiàn) 94
任務(wù)4.2 查詢指定用戶狀態(tài)的用戶基本數(shù)據(jù) 95
4.2.1 使用WHERE關(guān)鍵字添加查詢條件 95
4.2.2 使用WHERE關(guān)鍵字添加常見查詢條件 96
4.2.3 任務(wù)實現(xiàn) 101
任務(wù)4.3 統(tǒng)計用戶基本數(shù)據(jù)表中品牌名稱的種類數(shù) 102
4.3.1 使用DISTINCT關(guān)鍵字去重查詢 102
4.3.2 使用聚合函數(shù) 103
4.3.3 任務(wù)實現(xiàn) 105
任務(wù)4.4 統(tǒng)計不同用戶等級名稱的記錄數(shù) 105
4.4.1 設(shè)置列別名 105
4.4.2 任務(wù)實現(xiàn) 107
任務(wù)4.5 統(tǒng)計不同用戶狀態(tài)的記錄數(shù) 108
4.5.1 使用GROUP BY關(guān)鍵字分組查詢 109
4.5.2 任務(wù)實現(xiàn) 111
任務(wù)4.6 統(tǒng)計指定用戶數(shù)量范圍的用戶等級 111
4.6.1 使用HAVING關(guān)鍵字對分組結(jié)果進行篩選 111
4.6.2 任務(wù)實現(xiàn) 112
任務(wù)4.7 統(tǒng)計用戶數(shù)最多的3種用戶狀態(tài) 113
4.7.1 使用LIMIT關(guān)鍵字設(shè)置查詢結(jié)果展示 113
4.7.2 使用排序關(guān)鍵字對查詢結(jié)果排序 114
4.7.3 任務(wù)實現(xiàn) 117
任務(wù)4.8 查詢用戶發(fā)生狀態(tài)變更的時間及開戶時間 118
4.8.1 使用正則表達式查詢數(shù)據(jù) 118
4.8.2 任務(wù)實現(xiàn) 119
小結(jié) 120
實訓(xùn) 查詢電商貨品訂單數(shù)據(jù) 120
課后習(xí)題 122
第5章 廣電用戶賬單與訂單數(shù)據(jù)查詢進階 124
任務(wù)5.1 統(tǒng)計訂單的消費類型 125
5.1.1 介紹Hive內(nèi)置函數(shù) 125
5.1.2 使用條件函數(shù) 127
5.1.3 使用類型轉(zhuǎn)換函數(shù) 128
5.1.4 任務(wù)實現(xiàn) 129
任務(wù)5.2 統(tǒng)計用戶每年消費應(yīng)付總額 130
5.2.1 使用字符函數(shù) 130
5.2.2 任務(wù)實現(xiàn) 132
任務(wù)5.3 統(tǒng)計用戶每月消費應(yīng)付總額 133
5.3.1 使用日期函數(shù) 134
5.3.2 任務(wù)實現(xiàn) 137
任務(wù)5.4 統(tǒng)計用戶每月實際賬單金額 138
5.4.1 使用數(shù)學(xué)函數(shù) 138
5.4.2 任務(wù)實現(xiàn) 140
任務(wù)5.5 查詢用戶寬帶訂單的地址數(shù)據(jù) 141
5.5.1 使用JOIN語句 141
5.5.2 介紹UNION ALL關(guān)鍵字 145
5.5.3 任務(wù)實現(xiàn) 145
任務(wù)5.6 抽樣統(tǒng)計用戶訂購產(chǎn)品情況 146
5.6.1 使用桶表抽樣查詢 147
5.6.2 任務(wù)實現(xiàn) 147
小結(jié) 149
實訓(xùn) 149
實訓(xùn)1 查詢員工數(shù)據(jù) 149
實訓(xùn)2 查詢學(xué)生數(shù)據(jù) 151
課后習(xí)題 152
第6章 廣電用戶收視行為數(shù)據(jù)查詢優(yōu)化 154
任務(wù)6.1 使用視圖統(tǒng)計不同節(jié)目的用戶觀看人數(shù) 156
6.1.1 創(chuàng)建視圖 156
6.1.2 查看與刪除視圖 157
6.1.3 任務(wù)實現(xiàn) 159
任務(wù)6.2 優(yōu)化統(tǒng)計直播頻道數(shù) 159
6.2.1 配置Fetch抓取 160
6.2.2 合理設(shè)置map和reduce任務(wù)數(shù) 161
6.2.3 配置并行執(zhí)行 164
6.2.4 任務(wù)實現(xiàn) 165
任務(wù)6.3 使用子查詢統(tǒng)計節(jié)目類型為直播的頻道Top10 166
6.3.1 使用子查詢優(yōu)化查詢語句 166
6.3.2 優(yōu)化配置GROUP BY語句 167
6.3.3 使用GROUP BY代替COUNT(DISTINCT)去重統(tǒng)計 169
6.3.4 優(yōu)化配置LIMIT語句 171
6.3.5 任務(wù)實現(xiàn) 171
小結(jié) 173
實訓(xùn) 173
實訓(xùn)1 統(tǒng)計某城市各線路公交車的刷卡次數(shù) 173
實訓(xùn)2 統(tǒng)計某百貨商場會員總消費金額Top10 174
課后習(xí)題 175
第7章 廣電用戶數(shù)據(jù)清洗及數(shù)據(jù)導(dǎo)出 178
任務(wù)7.1 清洗無效用戶數(shù)據(jù) 179
7.1.1 探索無效用戶數(shù)據(jù) 179
7.1.2 刪除無效用戶數(shù)據(jù) 185
任務(wù)7.2 清洗無效收視行為數(shù)據(jù) 186
7.2.1 探索無效收視行為數(shù)據(jù) 186
7.2.2 刪除無效收視行為數(shù)據(jù) 191
任務(wù)7.3 清洗無效賬單和訂單數(shù)據(jù) 192
7.3.1 探索無效賬單數(shù)據(jù) 193
7.3.2 探索無效訂單數(shù)據(jù) 193
7.3.3 刪除無效賬單和無效訂單數(shù)據(jù) 194
任務(wù)7.4 導(dǎo)出處理結(jié)果至Linux本地和HDFS 194
7.4.1 使用INSERT OVERWRITE語句將數(shù)據(jù)導(dǎo)出至文件系統(tǒng) 194
7.4.2 保存處理結(jié)果至Linux本地和HDFS 196
小結(jié) 198
實訓(xùn) 198
實訓(xùn)1 刪除無效房價數(shù)據(jù) 198
實訓(xùn)2 刪除惡意好評手機數(shù)據(jù)并保存結(jié)果至Linux本地 199
課后習(xí)題 199
第8章 廣電用戶數(shù)據(jù)存儲與處理的程序開發(fā) 202
任務(wù)8.1 配置Hive遠程服務(wù) 203
任務(wù)8.2 搭建Hive遠程連接環(huán)境 205
8.2.1 創(chuàng)建IDEA開發(fā)項目 205
8.2.2 添加依賴 208
8.2.3 手動加載MySQL驅(qū)動 210
8.2.4 JDBC及其主要接口 212
8.2.5 創(chuàng)建連接測試程序 215
任務(wù)8.3 編寫程序?qū)崿F(xiàn)廣電數(shù)據(jù)的存儲 217
8.3.1 創(chuàng)建開發(fā)項目 217
8.3.2 創(chuàng)建HiveHelper類和連接Hive 217
8.3.3 創(chuàng)建測試類 219
8.3.4 創(chuàng)建Hive數(shù)據(jù)庫 220
8.3.5 創(chuàng)建Hive表 220
8.3.6 裝載數(shù)據(jù) 221
8.3.7 程序運行與調(diào)試 221
任務(wù)8.4 編寫程序?qū)崿F(xiàn)廣電數(shù)據(jù)的查詢與處理 223
8.4.1 查詢數(shù)據(jù) 223
8.4.2 刪除無效用戶數(shù)據(jù) 225
8.4.3 刪除無效收視行為數(shù)據(jù) 226
8.4.4 刪除無效賬單和無效訂單數(shù)據(jù) 227
小結(jié) 228
實訓(xùn) 228
實訓(xùn)1 對Hadoop日志進行統(tǒng)計分析 228
實訓(xùn)2 通過程序?qū)崿F(xiàn)對某技術(shù)論壇日志的分析 229
課后習(xí)題 230