Hive入門與大數據分析實戰
遲殿委
- 出版商: 清華大學
- 出版日期: 2023-06-01
- 定價: $534
- 售價: 8.5 折 $454
- 語言: 簡體中文
- 頁數: 214
- 裝訂: 平裝
- ISBN: 7302634211
- ISBN-13: 9787302634218
-
相關分類:
大數據 Big-data、Data Science
立即出貨 (庫存 < 3)
相關主題
商品描述
Hive是基於Hadoop的一個數據倉庫工具,用來進行數據的提取、轉換、加載,這是一種可以存儲、查詢和分析存儲在Hadoop中的大規模數據的機制。Hive能將結構化的數據文件映射為一張數據庫表,並能提供SQL查詢分析功能,將SQL語句轉換成MapReduce任務來執行,從而實現對數據進行分析的目的。本書配套示例源碼、PPT課件、教學大綱。本書可作為Hive數據倉庫初學者的入門書,也可作為Hive大數據分析與大數據應用開發工程師的指導手冊,還可作為高等院校或者高職高專電腦技術、人工智能、大數據技術及相關專業的教材或教學參考書。 《Hive入門與大數據分析實戰》共分11章,內容包括數據倉庫與Hive、Hive部署與基本操作、Hive語法基礎、Hive數據定義、Hive數據操作、Hive查詢、Hive函數、Hive數據壓縮、Hive調優、基於Hive的網站流量分析項目實戰、旅游酒店評價大數據分析項目實戰。最後的兩個項目實戰(均包括SQL和Java編程兩種解決方法)幫助讀者提高Hive大數據分析的綜合實戰能力。 本書註重基礎,內容翔實,突出示例講解,既可以作為從事數據分析處理的科研工程技術人員的自學用書,也可以作為高等學校相關專業的本科生、研究生的教學用書。
目錄大綱
目 錄
第1章 數據倉庫與Hive1
1.1 數據倉庫概述1
1.1.1 數據倉庫特徵與重要概念1
1.1.2 數據倉庫的數據存儲方式2
1.2 Hive數據倉庫簡介5
1.3 Hive版本和MapReduce版本的WordCount比較6
1.4 Hive和Hadoop的關系7
1.5 Hive和關系數據庫的異同8
1.6 Hive數據存儲簡介9
第2章 Hive部署與基本操作11
2.1 Linux環境的搭建11
2.1.1 VirtualBox虛擬機安裝11
2.1.2 安裝Linux操作系統13
2.1.3 SSH工具與使用19
2.1.4 Linux統一設置21
2.2 Hadoop偽分佈式環境的搭建23
2.2.1 安裝本地模式運行的Hadoop23
2.2.2 Hadoop偽分佈式環境的準備25
2.2.3 Hadoop偽分佈式的安裝29
2.3 Hadoop完全分佈式環境的搭建35
2.3.1 Hadoop完全分佈式集群的搭建35
2.3.2 ZooKeeper高可靠集群的搭建40
2.3.3 Hadoop高可靠集群的搭建44
2.4 Hive的安裝與配置53
2.4.1 Hive的安裝與啟動53
2.4.2 基本的SQL操作命令54
2.5 Hive的一些命令56
2.5.1 顯示Hive的幫助56
2.5.2 顯示Hive某個命令的幫助56
2.5.3 變量與屬性56
2.5.4 指定SQL語句或文件57
2.5.5 顯示表頭58
2.6 Hive元數據庫58
2.6.1 Derby58
2.6.2 MySQL60
2.7 MySQL的安裝61
2.8 配置MySQL保存Hive元數據62
2.9 HiveServer2與Beeline配置65
第3章 Hive語法基礎68
3.1 數據類型列表68
3.2 集合類型69
3.2.1 array測試70
3.2.2 map測試71
3.2.3 struct測試71
3.3 數據類型轉換72
3.4 運算符73
3.5 Hive表存儲格式74
3.6 Hive的其他操作命令75
3.7 Hive分析Tomcat日誌案例76
第4章 Hive數據定義79
4.1 數據庫的增刪改查79
4.1.1 在默認位置創建數據庫79
4.1.2 指定目錄創建數據庫80
4.1.3 顯示當前使用的數據庫81
4.1.4 刪除數據庫81
4.2 創建內部表81
4.3 使用關鍵字external創建外部表83
4.3.1 指定現有目錄84
4.3.2 先創建表,再指定目錄84
4.3.3 顯示某個表或某個分區的信息85
4.4 創建分桶表86
4.5 分區表89
4.5.1 創建和顯示分區表89
4.5.2 增加、刪除和修改分區90
4.6 顯示某張表的詳細信息92
4.7 指定輸入輸出都是SequenceFile類型94
4.8 關於視圖94
4.8.1 使用視圖降低查詢的復雜度94
4.8.2 查看視圖的信息95
4.8.3 刪除視圖95
第5章 Hive數據操作96
5.1 向表中裝載數據96
5.2 通過Insert向表中插入數據97
5.3 動態分區插入數據98
5.4 創建表並插入數據100
5.5 導出數據100
第6章 Hive查詢103
6.1 SelectFrom語句103
6.2 Select基本查詢104
6.3 Where語句105
6.4 Group By語句107
6.5 Join語句108
6.6 排序110
6.6.1 Order By110
6.6.2 Sort By112
6.6.3 Distribute By113
6.6.4 Cluster By114
6.7 抽樣查詢114
第7章 Hive函數117
7.1 查看系統內置函數117
7.2 常用內置函數117
7.3 Hive的其他函數121
7.3.1 準備數據121
7.3.2 其他函數的使用121
7.3.3 顯示某個函數的幫助信息131
7.4 自定義函數132
7.4.1 Hive自定義UDF的過程132
7.4.2 Hive UDTF函數135
第8章 Hive數據壓縮138
8.1 數據壓縮格式138
8.2 數據壓縮配置139
8.2.1 Snappy壓縮方式配置139
8.2.2 MapReduce支持的壓縮編碼141
8.2.3 MapReduce壓縮參數配置142
8.3 開啟Map端和Reduce端的輸出壓縮142
8.4 常用Hive表存儲格式比較144
8.5 存儲與壓縮相結合148
第9章 Hive調優151
9.1 Hadoop計算框架特性151
9.2 Hive優化的常用手段151
9.3 Hive優化要點152
9.3.1 全排序152
9.3.2 怎樣做笛卡兒積156
9.3.3 怎樣寫exist/in子句156
9.3.4 怎樣決定Reducer個數156
9.3.5 合並MapReduce操作157
9.3.6 Bucket與Sampling157
9.3.7 Partition158
9.3.8 Join158
9.3.9 數據傾斜160
9.3.10 合並小文件161
9.3.11 Group By163
第10章 基於Hive的網站流量分析項目實戰164
10.1 項目需求及分析164
10.1.1 數據集及數據說明164
10.1.2 功能需求165
10.2 利用Java實現數據清洗165
10.2.1 數據上傳到HDFS166
10.2.2 http.log數據清洗166
10.2.3 phone.txt數據清洗170
10.3 利用MySQL實現數據清洗173
10.3.1 http.log數據清洗173
10.3.2 phone.txt數據清洗175
10.4 數據分析的實現176
10.4.1 創建Hive庫和表176
10.4.2 使用SQL進行數據分析176
第11章 旅游酒店評價大數據分析項目實戰180
11.1 項目介紹180
11.2 項目需求及分析181
11.2.1 數據集及數據說明181
11.2.2 功能需求183
11.3 利用Java實現數據清洗184
11.3.1 本地Hadoop運行環境搭建184
11.3.2 數據上傳到HDFS186
11.3.3 Hadoop數據清洗189
11.4 利用MySQL實現數據清洗192
10.4.1 hotelbasic.csv數據清洗192
10.4.2 hoteldata.csv數據清洗193
11.5 數據分析的實現194
11.5.1 構建Hive數據倉庫表194
11.5.2 導出結果數據到MySQL197
11.6 分析結果數據可視化200
11.6.1 數據可視化開發200
11.6.2 數據可視化部署208