Hive數據倉庫案例教程

王劍輝,於澗

  • 出版商: 電子工業
  • 出版日期: 2021-08-01
  • 定價: $270
  • 售價: 8.5$230
  • 語言: 簡體中文
  • 頁數: 200
  • 裝訂: 平裝
  • ISBN: 7121418061
  • ISBN-13: 9787121418068
  • 相關分類: Hadoop大數據 Big-data資料庫
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

本書系統介紹Hive數據倉庫的相關知識和技術。全書共12章,主要內容包括Hive數據倉庫基礎、Hive環境搭建、Hive基礎、Hive數據定義、Hive數據操作、HQL查詢、Hive函數、Hive數據壓縮、Hive優化、Hive綜合案例和上機實驗等。本書知識結構簡單明瞭,案例生動具體,內容設計新穎。本書免費提供教學大綱、電子課件和所有案例源代碼,書後附有部分習題參考答案。本書可作為普通高校數據科學與大數據相關專業的教材,也可作為想繼續深入瞭解大數據存儲和開發的讀者的參考書,還可作為各類大數據相關培訓的教材。

作者簡介

王劍輝,瀋陽師範大學數學與系統科學學院教授,長期從事Web應用程序設計,Hive數據倉庫,Hadoop大數據技術、Java程序設計、人工智能等方面的科研與教學工作。

目錄大綱

第1章 Hive數據倉庫基礎 1
1.1 數據倉庫 1
1.1.1 數據倉庫的概念 1
1.1.2 數據倉庫的特點 3
1.1.3 數據倉庫的數據模型 3
1.1.4 數據倉庫的體系結構 4
1.2 Hive數據倉庫 5
1.3 Hive體系結構及執行流程 6
1.3.1 Hive體系結構 6
1.3.2 Hive執行流程 8
1.4 Hive數據倉庫和數據庫比較 8
習題1 10

第2章 Hive環境搭建 12
2.1 Hive安裝及配置 12
2.1.1 Hive的安裝模式 12
2.1.2 Hive安裝及配置過程 12
2.1.3 Hive基本操作 14
2.2 MySQL安裝及配置 15
2.2.1 MySQL安裝包準備 15
2.2.2 MySQL服務器端安裝 15
2.2.3 MySQL客戶端安裝 16
2.3 Hive元數據配置 16
2.3.1 驅動複製 16
2.3.2 配置元數據到MySQL 16
2.3.3 多終端啟動Hive 17
2.4 Hive JDBC連接 18
2.4.1 HiveServer2配置 18
2.4.2 HiveServer2啟動 18
2.4.3 Beeline啟動 18
2.4.4 HiveServer2連接 19
2.5 Hive常見屬性配置 19
2.5.1 Hive位置配置 19
2.5.2 信息顯示配置 19
2.5.3 運行日誌信息配置 20
2.5.4 Hive參數配置方式 20
習題2 21

第3章 Hive基礎 23
3.1 Hive數據類型 23
3.1.1 基本數據類型 23
3.1.2 複雜數據類型 24
3.1.3 數據類型轉換 24
3.2 Hive運算符 25
3.2.1 算術運算符 25
3.2.2 比較運算符 25
3.2.3 邏輯運算符 26
3.2.4 複雜運算符 26
3.3 Hive數據存儲 27
3.4 Hive表存儲格式 27
3.4.1 行式存儲和列式存儲 28
3.4.2 TextFile格式 28
3.4.3 SequenceFile格式 28
3.4.4 ORC格式 29
3.4.5 Parquet格式 29
3.5 Hive常用交互命令 30
3.6 Hive其他操作命令 31
習題3 31

第4章 Hive數據定義 34
4.1 數據倉庫的創建 34
4.2 數據倉庫的查詢 35
4.2.1 顯示數據倉庫 35
4.2.2 查看數據倉庫詳情 35
4.2.3 切換數據倉庫 35
4.3 數據倉庫的修改 35
4.4 數據倉庫的刪除 36
4.5 表的創建 36
4.5.1 內部表 37
4.5.2 外部表 40
4.5.3 內部表和外部表的轉換 42
4.6 分區表 42
4.6.1 分區表基本操作 43
4.6.2 二級分區表創建 45
4.7 桶表 46
4.8 表的修改 48
4.8.1 重命名 48
4.8.2 增加和刪除分區 48
4.8.3 修改、增加和替換列 49
4.9 表的刪除 51
4.10 視圖 52
習題4 57

第5章 Hive數據操作 60
5.1 數據導入 60
5.1.1 Load加載數據 60
5.1.2 Insert插入數據 61
5.1.3 As Select加載數據 63
5.1.4 Location加載數據 63
5.1.5 Import加載數據 64
5.2 數據導出 64
5.2.1 Insert語句導出 64
5.2.2 Hadoop命令導出 65
5.2.3 Hive Shell命令導出 65
5.2.4 Export語句導出 65
5.2.5 Sqoop導出 65
習題5 66

第6章 HQL查詢 68
6.1 Select基本查詢 68
6.1.1 全表和特定列查詢 68
6.1.2 列的別名 69
6.1.3 Limit語句 69
6.2 Where語句 69
6.2.1 Like的使用 71
6.2.2 Rlike的使用 72
6.3 分組語句 74
6.3.1 Group By語句 74
6.3.2 Having語句 74
6.4 Join語句 75
6.4.1 等值連接 75
6.4.2 表的別名 76
6.4.3 內連接 76
6.4.4 左外連接 76
6.4.5 右外連接 76
6.4.6 滿外連接 76
6.4.7 左半連接 77
6.4.8 多表連接 77
6.4.9 笛卡兒積Join 78
6.5 排序 79
6.5.1 Order By全局排序 79
6.5.2 字段別名排序 80
6.5.3 多字段排序 81
6.5.4 Sort By內部排序 81
6.5.5 Distribute By分區排序 83
6.5.6 Cluster By排序 83
6.6 抽樣查詢 84
6.6.1 桶表抽樣查詢 84
6.6.2 數據塊抽樣查詢 85
6.6.3 隨機抽樣查詢 87
習題6 87

第7章 Hive函數 89
7.1 Hive內置函數 89
7.1.1 數值計算函數 89
7.1.2 聚合函數 90
7.1.3 日期時間函數 91
7.1.4 條件函數 92
7.1.5 字符串處理函數 93
7.1.6 內置函數查看命令 96
7.2 其他常用函數 96
7.2.1 空字段賦值函數 96
7.2.2 列轉行函數 97
7.2.3 窗口函數 100
7.2.4 排序函數 106
7.3 自定義函數 108
7.3.1 UDF函數 108
7.3.2 UDTF函數 110
7.3.3 UDAF函數 112
習題7 113

第8章 Hive數據壓縮 116
8.1 數據壓縮格式 116
8.2 Hadoop壓縮配置 117
8.2.1 Snappy壓縮方式配置 117
8.2.2 MapReduce支持的壓縮編碼 118
8.2.3 MapReduce壓縮格式參數配置 118
8.3 Map輸出壓縮開啟 119
8.4 Reduce輸出壓縮開啟 119
8.5 常用Hive表存儲格式比較 120
8.5.1 存儲文件的壓縮比測試 120
8.5.2 存儲文件的查詢速度測試 122
8.6 存儲和壓縮結合 123
習題8 125

第9章 Hive優化 127
9.1 Hive參數優化 127
9.1.1 本地模式 127
9.1.2 Fetch抓取 128
9.1.3 並行執行 128
9.1.4 嚴格模式 129
9.1.5 推測執行 130
9.1.6 JVM重用 131
9.2 數據傾斜 131
9.2.1 合理設置Map個數 131
9.2.2 合併小文件 132
9.2.3 複雜文件增加Map個數 132
9.2.4 合理設置Reduce個數 133
9.3 HQL優化 134
9.3.1 Group By優化 134
9.3.2 小表、大表Join 134
9.3.3 大表Join大表 136
9.3.4 MapJoin 137
9.3.5 Count優化 138
9.3.6 行/列過濾優化 139
9.3.7 動態分區調整優化 140
9.3.8 執行計劃優化 141
習題9 142

第10章 綜合案例1:廣電大數據分析 144
10.1 案例需求分析 144
10.2 案例數據及建表 144
10.2.1 原始數據 144
10.2.2 數據表結構 144
10.2.3 創建表 145
10.2.4 向TextFile表導入數據 147
10.2.5 向ORC表導入數據 147
10.3 數據統計分析 147
10.3.1 基本信息查詢 147
10.3.2 單個用戶觀看時長Top20 148
10.3.3 用戶觀看時長Top20 149
10.3.4 電視觀看數Top20 150
10.3.5 電視觀看時長Top20 150
10.3.6 用戶正常狀態及數量 151

第11章 綜合案例2:影評大數據分析 152
11.1 案例需求分析 152
11.2 案例數據及建表 152
11.2.1 原始數據 152
11.2.2 創建表及導入數據 153
11.2.3 基本信息查詢 153
11.3 數據統計分析 154
11.3.1 評分次數最多的10部電影 154
11.3.2 性別當中評分最高的10部電影 154
11.3.3 一部電影各年齡段的平均影評 156
11.3.4 評分最高的10部電影的平均影評分 156
11.3.5 好片最多年份的最好看電影Top10 157
11.3.6 評分最高的10部Comedy類電影 158
11.3.7 各種類型電影中評價最高的5部電影 159

第12章 上機實驗 163
實驗1 Hive安裝部署 163
實驗2 Hive數據定義 165
實驗3 Hive數據操作 167
實驗4 Hive分區表和桶表 171
實驗5 Hive查詢 174
實驗6 Hive分組排序 177
實驗7 Hive JDBC連接 179
實驗8 Hive UDF 182
附錄A Hive常用網址 185
附錄B 常見錯誤及解決方案 186
附錄C 部分習題答案 188
參考文獻 191