數(shù)據(jù)倉(cāng)庫(kù)Hive應(yīng)用實(shí)戰(zhàn)
定 價(jià):49.9 元
- 作者:王海霞
- 出版時(shí)間:2023/12/1
- ISBN:9787121469879
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.13
- 頁(yè)碼:296
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書包括9個(gè)模塊,分別為部署數(shù)據(jù)倉(cāng)庫(kù)環(huán)境、創(chuàng)建數(shù)據(jù)倉(cāng)庫(kù)文件、管理倉(cāng)庫(kù)表中的數(shù)據(jù)、管理分區(qū)表中的數(shù)據(jù)、分析和導(dǎo)出倉(cāng)庫(kù)數(shù)據(jù)、應(yīng)用函數(shù)統(tǒng)計(jì)分析、遷移平臺(tái)數(shù)據(jù)方法、調(diào)優(yōu)數(shù)據(jù)倉(cāng)庫(kù)性能、數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用實(shí)戰(zhàn)。編者秉持“以提升學(xué)生能力為本”的編寫理念,基于工作過(guò)程導(dǎo)向重構(gòu)課程體系,采用情景導(dǎo)入式和問(wèn)題導(dǎo)入式教學(xué)模式,聯(lián)合企業(yè)遴選4個(gè)不同應(yīng)用場(chǎng)景的大數(shù)據(jù)分析項(xiàng)目,設(shè)計(jì)24個(gè)循序漸進(jìn)的任務(wù),按照“學(xué)習(xí)目標(biāo)→任務(wù)分析→技術(shù)準(zhǔn)備→任務(wù)實(shí)施→任務(wù)小結(jié)→模塊總結(jié)→實(shí)踐創(chuàng)新→檢測(cè)反饋”結(jié)構(gòu)編寫,引導(dǎo)學(xué)生“照樣做”“模仿做”“獨(dú)立做”“創(chuàng)新做”。本書既可作為高職高專院校大數(shù)據(jù)技術(shù)專業(yè)的教材,又可作為培訓(xùn)機(jī)構(gòu)的教學(xué)用書,還可作為大數(shù)據(jù)技術(shù)行業(yè)技術(shù)人員的參考用書。
王海霞,女,湖南省技術(shù)能手,數(shù)據(jù)庫(kù)系統(tǒng)工程師,二級(jí)技師,湖南省大數(shù)據(jù)技術(shù)專業(yè)教學(xué)資源庫(kù)核心成員,全國(guó)職業(yè)院校技能大賽"優(yōu)秀指導(dǎo)老師”,主持省級(jí)教育教學(xué)改革研究項(xiàng)目——"新工科”背景下大數(shù)據(jù)技術(shù)與應(yīng)用專業(yè)交融型課程體系構(gòu)建研究—以《Hive數(shù)據(jù)倉(cāng)庫(kù)》在線課程為例。
目錄
項(xiàng)目模塊1 部署數(shù)據(jù)倉(cāng)庫(kù)環(huán)境 001
任務(wù)1.1 部署Hive系統(tǒng) 002
1.1.1 Hive的系統(tǒng)架構(gòu) 002
1.1.2 Hive的工作原理 004
1.1.3 Hive和傳統(tǒng)數(shù)據(jù)庫(kù)的區(qū)別 005
1.1.4 檢查及配置Hadoop 006
1.1.5 安裝和配置Hive 013
1.1.6 配置MySQL存儲(chǔ)Hive元數(shù)據(jù) 015
任務(wù)1.2 操作Hive CLI 019
1.2.1 Hive CLI的自動(dòng)補(bǔ)全功能 019
1.2.2 Hive CLI中命令的格式 019
1.2.3 在Hive CLI中執(zhí)行Hadoop的dfs命令 020
1.2.4 Hive CLI中的變量和屬性 021
1.2.5 使用Hive中的-e(一次使用)命令 026
1.2.6 使用Hive中的-f命令執(zhí)行腳本 027
1.2.7 設(shè)置.hiverc默認(rèn)配置文件 028
1.2.8 查看操作命令歷史 029
模塊總結(jié) 029
實(shí)踐創(chuàng)新 030
檢測(cè)反饋 031
項(xiàng)目模塊2 創(chuàng)建數(shù)據(jù)倉(cāng)庫(kù)文件 033
任務(wù)2.1 創(chuàng)建數(shù)據(jù)倉(cāng)庫(kù) 034
2.1.1 數(shù)據(jù)倉(cāng)庫(kù)分層 034
2.1.2 數(shù)據(jù)倉(cāng)庫(kù)文件的存儲(chǔ)路徑 036
2.1.3 數(shù)據(jù)倉(cāng)庫(kù)的創(chuàng)建 036
2.1.4 設(shè)計(jì)“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的數(shù)據(jù)倉(cāng)庫(kù) 038
2.1.5 創(chuàng)建“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目運(yùn)營(yíng)層數(shù)據(jù)倉(cāng)庫(kù) 040
2.1.6 創(chuàng)建“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目倉(cāng)庫(kù)層數(shù)據(jù)倉(cāng)庫(kù) 040
任務(wù)2.2 查詢和管理數(shù)據(jù)倉(cāng)庫(kù) 041
2.2.1 數(shù)據(jù)倉(cāng)庫(kù)的查詢 042
2.2.2 數(shù)據(jù)倉(cāng)庫(kù)的切換 042
2.2.3 數(shù)據(jù)倉(cāng)庫(kù)的查看 043
2.2.4 數(shù)據(jù)倉(cāng)庫(kù)的存儲(chǔ)位置 043
2.2.5 查詢“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的數(shù)據(jù)倉(cāng)庫(kù)的列表 045
2.2.6 查詢“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的數(shù)據(jù)倉(cāng)庫(kù)的詳細(xì)信息 046
任務(wù)2.3 修改和刪除數(shù)據(jù)倉(cāng)庫(kù) 046
2.3.1 數(shù)據(jù)倉(cāng)庫(kù)的修改 047
2.3.2 數(shù)據(jù)倉(cāng)庫(kù)的刪除 048
2.3.3 修改“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目運(yùn)營(yíng)層數(shù)據(jù)倉(cāng)庫(kù)的屬性 049
2.3.4 修改“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目倉(cāng)庫(kù)層數(shù)據(jù)倉(cāng)庫(kù)的屬性 049
2.3.5 刪除coursedb數(shù)據(jù)倉(cāng)庫(kù) 050
模塊總結(jié) 051
實(shí)踐創(chuàng)新 051
檢測(cè)反饋 053
項(xiàng)目模塊3 管理倉(cāng)庫(kù)表中的數(shù)據(jù) 055
任務(wù)3.1 創(chuàng)建數(shù)據(jù)表 056
3.1.1 Hive中的數(shù)據(jù)類型 057
3.1.2 表的創(chuàng)建 058
3.1.3 表的管理 062
3.1.4 其他創(chuàng)建表的方式 063
3.1.5 數(shù)據(jù)表屬性 065
3.1.6 數(shù)據(jù)表存儲(chǔ)格式 066
3.1.7 構(gòu)建“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的邏輯模型 068
3.1.8 創(chuàng)建“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的ods_site數(shù)據(jù)倉(cāng)庫(kù)的非分
區(qū)表 071
3.1.9 創(chuàng)建“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的dwd_site數(shù)據(jù)倉(cāng)庫(kù)中的表 075
任務(wù)3.2 修改和刪除數(shù)據(jù)表 077
3.2.1 修改表 078
3.2.2 刪除表 081
3.2.3 修改“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的ods_site數(shù)據(jù)倉(cāng)庫(kù)中的表 083
任務(wù)3.3 導(dǎo)入數(shù)據(jù)到表中 084
3.3.1 使用LOAD DATA語(yǔ)句導(dǎo)入數(shù)據(jù) 084
3.3.2 使用INSERT...SELECT語(yǔ)句導(dǎo)入數(shù)據(jù) 087
3.3.3 使用IMPORT語(yǔ)句導(dǎo)入數(shù)據(jù) 089
3.3.4 使用CTAS語(yǔ)句導(dǎo)入數(shù)據(jù) 089
3.3.5 使用INSERT INTO TABLE...VALUES語(yǔ)句導(dǎo)入數(shù)據(jù) 090
3.3.6 將源數(shù)據(jù)導(dǎo)入“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的ods_site數(shù)據(jù)倉(cāng)庫(kù)的
非分區(qū)表中 091
模塊總結(jié) 093
實(shí)踐創(chuàng)新 094
檢測(cè)反饋 095
項(xiàng)目模塊4 管理分區(qū)表中的數(shù)據(jù) 097
任務(wù)4.1 創(chuàng)建和管理分區(qū)表 098
4.1.1 創(chuàng)建分區(qū)表 098
4.1.2 管理分區(qū)表 101
4.1.3 查看分區(qū)信息 101
4.1.4 創(chuàng)建“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的分區(qū)表 103
任務(wù)4.2 導(dǎo)入數(shù)據(jù)到分區(qū)表中 106
4.2.1 在靜態(tài)分區(qū)中導(dǎo)入數(shù)據(jù) 106
4.2.2 在動(dòng)態(tài)分區(qū)中導(dǎo)入數(shù)據(jù) 108
4.2.3 混合使用動(dòng)態(tài)分區(qū)和靜態(tài)分區(qū)導(dǎo)入數(shù)據(jù) 109
4.2.4 將源數(shù)據(jù)導(dǎo)入“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的ods_site數(shù)據(jù)倉(cāng)庫(kù)的
分區(qū)表中 111
任務(wù)4.3 修改和刪除分區(qū) 113
4.3.1 添加分區(qū) 113
4.3.2 修改分區(qū)路徑 115
4.3.3 修改分區(qū)字段名 116
4.3.4 刪除分區(qū) 117
4.3.5 修改“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的ods_site數(shù)據(jù)倉(cāng)庫(kù)中的
分區(qū)表 118
模塊總結(jié) 120
實(shí)踐創(chuàng)新 121
檢測(cè)反饋 122
項(xiàng)目模塊5 分析和導(dǎo)出倉(cāng)庫(kù)數(shù)據(jù) 124
任務(wù)5.1 分析倉(cāng)庫(kù)數(shù)據(jù) 125
5.1.1 SELECT語(yǔ)句 126
5.1.2 LIMIT子句 130
5.1.3 SELECT嵌套語(yǔ)句 130
5.1.4 CASE分支表達(dá)式 131
5.1.5 WHERE子句 132
5.1.6 GROUP BY子句和HAVING子句 136
5.1.7 JOIN連接 140
5.1.8 排序子句 144
5.1.9 分析統(tǒng)計(jì)“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的DWD層數(shù)據(jù) 149
5.1.10 分析統(tǒng)計(jì)“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的DM層已建址銀行
要素值 153
5.1.11 分析過(guò)濾“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的DM層不可建址
區(qū)域 158
任務(wù)5.2 導(dǎo)出倉(cāng)庫(kù)數(shù)據(jù) 161
5.2.1 使用INSERT...SELECT語(yǔ)句導(dǎo)出數(shù)據(jù) 161
5.2.2 使用EXPORT語(yǔ)句導(dǎo)出數(shù)據(jù) 164
5.2.3 使用-e重定向命令導(dǎo)出數(shù)據(jù) 166
5.2.4 使用dfs -get命令導(dǎo)出數(shù)據(jù) 166
5.2.5 導(dǎo)出“大數(shù)據(jù)商業(yè)智能選址”項(xiàng)目的dwd_site數(shù)據(jù)倉(cāng)庫(kù)中的
數(shù)據(jù) 167
模塊總結(jié) 169
實(shí)踐創(chuàng)新 170
檢測(cè)反饋 171
項(xiàng)目模塊6 應(yīng)用函數(shù)統(tǒng)計(jì)分析 173
任務(wù)6.1 應(yīng)用Hive內(nèi)置函數(shù) 174
6.1.1 初識(shí)Hive函數(shù) 174
6.1.2 Hive函數(shù)的分類 175
6.1.3 聚合函數(shù) 176
6.1.4 集合函數(shù) 178
6.1.5 數(shù)學(xué)函數(shù) 179
6.1.6 類型轉(zhuǎn)換函數(shù) 180
6.1.7 日期函數(shù) 181
6.1.8 條件函數(shù) 182
6.1.9 字符串函數(shù) 184
6.1.10 表生成函數(shù) 190
任務(wù)6.2 應(yīng)用Hive自定義函數(shù) 191
6.2.1 自定義函數(shù)的特點(diǎn) 192
6.2.2 新建Maven項(xiàng)目環(huán)境 192
6.2.3 編寫UDF的Java代碼 194
6.2.4 將UDF部署到Hive環(huán)境中 196
6.2.5 應(yīng)用UDF 198
模塊總結(jié) 199
實(shí)踐創(chuàng)新 200
檢測(cè)反饋 201
項(xiàng)目模塊7 遷移平臺(tái)數(shù)據(jù)方法 203
任務(wù)7.1 部署和配置Sqoop 204
7.1.1 Sqoop介紹 204
7.1.2 Sqoop架構(gòu) 205
7.1.3 部署Sqoop 206
7.1.4 配置Sqoop 207
任務(wù)7.2 應(yīng)用Sqoop遷移數(shù)據(jù) 209
7.2.1 Sqoop常用命令 209
7.2.2 Sqoop數(shù)據(jù)遷移方式 210
7.2.3 將Hive表數(shù)據(jù)遷移到MySQL中 211
7.2.4 將MySQL表數(shù)據(jù)遷移到Hive中 214
模塊總結(jié) 220
實(shí)踐創(chuàng)新 220
檢測(cè)反饋 221
項(xiàng)目模塊8 調(diào)優(yōu)數(shù)據(jù)倉(cāng)庫(kù)性能 224
任務(wù)8.1 調(diào)優(yōu)Hive參數(shù) 225
8.1.1 配置本地模式 225
8.1.2 配置嚴(yán)格模式 227
8.1.3 配置動(dòng)態(tài)分區(qū) 228
8.1.4 配置并行執(zhí)行 229
8.1.5 配置Fetch抓取 229
8.1.6 配置合并文件 230
任務(wù)8.2 調(diào)優(yōu)Hive存儲(chǔ) 231
8.2.1 調(diào)優(yōu)文件存儲(chǔ) 232
8.2.2 調(diào)優(yōu)數(shù)據(jù)壓縮 232
任務(wù)8.3 調(diào)優(yōu)HiveQL語(yǔ)句 234
8.3.1 配置列裁剪 235
8.3.2 配置分區(qū)裁剪 235
8.3.3 配置MapJoin 236
8.3.4 配置GROUP BY 236
8.3.5 調(diào)優(yōu)表設(shè)計(jì) 237
模塊總結(jié) 237
實(shí)踐創(chuàng)新 238
檢測(cè)反饋 239
項(xiàng)目模塊9 數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用實(shí)戰(zhàn) 241
任務(wù)9.1 設(shè)計(jì)數(shù)據(jù)倉(cāng)庫(kù) 242
9.1.1 分析原始數(shù)據(jù)格式 242
9.1.2 創(chuàng)建數(shù)據(jù)倉(cāng)庫(kù)及數(shù)據(jù)表 245
任務(wù)9.2 導(dǎo)入數(shù)據(jù)到聯(lián)通運(yùn)營(yíng)商數(shù)據(jù)倉(cāng)庫(kù)中 248
9.2.1 導(dǎo)入數(shù)據(jù) 249
9.2.2 驗(yàn)證導(dǎo)入結(jié)果 249
任務(wù)9.3 清洗聯(lián)通運(yùn)營(yíng)商數(shù)據(jù) 251
9.3.1 刪除重復(fù)數(shù)據(jù) 251
9.3.2 處理缺失值 253
9.3.3 衍生新指標(biāo) 255
9.3.4 刪除無(wú)效字段 256
9.3.5 歸集數(shù)據(jù) 256
任務(wù)9.4 統(tǒng)計(jì)分析聯(lián)通運(yùn)營(yíng)商數(shù)據(jù) 259
9.4.1 統(tǒng)計(jì)用戶的年齡情況 259
9.4.2 統(tǒng)計(jì)用戶的發(fā)展渠道 260
9.4.3 統(tǒng)計(jì)不同活動(dòng)類型的用戶數(shù)量 261
9.4.4 統(tǒng)計(jì)用戶使用短信情況 261
模塊總結(jié) 262
實(shí)踐創(chuàng)新 263
檢測(cè)反饋 264
附錄A “大數(shù)據(jù)智慧旅游”產(chǎn)品的背景 266
附錄B “大數(shù)據(jù)智慧旅游”項(xiàng)目的背景 270
附錄C “大數(shù)據(jù)智慧旅游”項(xiàng)目的數(shù)據(jù)處理流程 272
附錄D “大數(shù)據(jù)智慧旅游”項(xiàng)目的邏輯模型設(shè)計(jì) 274