Hive編程技術(shù)與應用(第二版)
-
【作 者】張鐵紅 張繼山 那銳
【I S B N 】978-7-5226-1170-9
【責任編輯】趙佳琦
【適用讀者群】本專(zhuān)通用
【出版時(shí)間】2023-01-18
【開(kāi) 本】16開(kāi)
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁(yè) 數】160
【千字數】250
【印 張】10
【定 價(jià)】¥36
【叢 書(shū)】普通高等教育數據科學(xué)與大數據技術(shù)專(zhuān)業(yè)教材
【備注信息】
簡(jiǎn)介
本書(shū)特色
前言
章節列表
精彩閱讀
下載資源
相關(guān)圖書(shū)
本書(shū)通過(guò)原理加案例的方式系統地講解了Hive編程技術(shù),使讀者能夠全面地了解使用Hive的開(kāi)發(fā)流程。書(shū)中精心安排了Hive的原理分析、架構特點(diǎn)、環(huán)境搭建、HiveQL使用等內容,給出了大量的開(kāi)發(fā)案例及其開(kāi)發(fā)過(guò)程,使讀者對Hive開(kāi)發(fā)有直觀(guān)的印象。
全書(shū)共10章:第1~7章系統講解Hive工作原理、特點(diǎn),Hive架構,HiveQL表操作,HiveQL數據操作,HiveQL查詢(xún),Hive配置與應用,Hive自定義函數;第8~10章是綜合案例部分,通過(guò)案例幫助讀者掌握整個(gè)大數據項目的開(kāi)發(fā)流程,包括數據清洗、數據處理、數據導入與導出。本書(shū)知識結構簡(jiǎn)單明了,案例生動(dòng)具體,內容設計新穎,思路清晰。
本書(shū)不僅可作為普通高校大數據相關(guān)專(zhuān)業(yè)的教材,也可以作為想繼續深入了解大數據編程的讀者的參考書(shū),還可作為各類(lèi)相關(guān)培訓班的培訓教材。
本書(shū)配有電子教案,讀者可以從中國水利水電出版社網(wǎng)站(www.waterpub.com.cn)或萬(wàn)水書(shū)苑網(wǎng)站(www.0319fcw.com)免費下載。
內容實(shí)用——理論與實(shí)踐結合,重點(diǎn)突出應用
體系完善——構建完整的大數據專(zhuān)業(yè)解決方案
產(chǎn)教融合——高校企業(yè)共參與,對標行業(yè)標準
資源豐富——微課、課件、教案、源碼、答案
再 版 前 言
現在是大數據時(shí)代,我們正以前所未有的速度和規模產(chǎn)生數據。數據資產(chǎn)正在成為與土地、資本、人力并駕齊驅的關(guān)鍵生產(chǎn)要素,并在社會(huì )、經(jīng)濟、科學(xué)研究等方面顛覆人們探索世界的方法,驅動(dòng)產(chǎn)業(yè)間的融合與分立。大數據是用來(lái)描述巨大數據規模、復雜數據類(lèi)型的數據集,它本身蘊含著(zhù)豐富的價(jià)值。對這些數據的分析處理促進(jìn)了許多優(yōu)秀的海量數據分析平臺的產(chǎn)生,Hadoop平臺就是當前最為主流的一款。
Hive是Hadoop生態(tài)系統中必不可少的一個(gè)工具,它提供了一種SQL語(yǔ)言,可以查詢(xún)存儲在HDFS(Hadoop Distributed File System,Hadoop分布式文件系統)中的數據或者Hadoop支持的其他文件系統,如MapR-FS、Amazon S3、HBase和Cassandra。Hive降低了應用程序遷移到Hadoop集群的復雜度,掌握SQL語(yǔ)句的開(kāi)發(fā)人員可以輕松地學(xué)習并使用Hive。
本書(shū)在第一版的基礎上修訂了差錯,升級軟件版本并配套了微課資源和習題。全書(shū)共分10章,其中不僅有詳細的理論講解,還有大量的實(shí)戰操作。具體內容如下:
第1章首先介紹了Hive的基本工作原理及HiveQL語(yǔ)句在Hive中執行的具體流程;其次介紹了Hive中的數據類(lèi)型,主要包括基本數據類(lèi)型和復雜數據類(lèi)型;最后介紹了Hive的特點(diǎn)。
第2章詳細介紹了Hive的基本架構,主要包括Hive的相關(guān)用戶(hù)接口、Hive元數據庫中的表結構和三種存儲方式、Hive數據存儲中的相關(guān)概念、Hive中文件格式的不同特性和區別。
第3章介紹了HiveQL的相關(guān)表操作。
第4章介紹了HiveQL的相關(guān)數據操作,主要包括數據的導入和導出。
第5章介紹了HiveQL查詢(xún)語(yǔ)句中的不同語(yǔ)法和使用方式。
第6章介紹了Hive的完整安裝過(guò)程。在此基礎上給出Hive的不同訪(fǎng)問(wèn)方式,并基于Hive CLI方式給出相關(guān)操作的介紹,同時(shí)給出Hive數據定義的相關(guān)操作。
第7章介紹了Hive的自定義函數,給出了UDF、UDTF、UDAF各自的函數實(shí)現方式,并給出了具體的實(shí)現源碼。
第8~10章給出了Hive的相關(guān)綜合案例,將之前章節的內容通過(guò)實(shí)際案例串聯(lián)起來(lái),達到最終應用的目的。
本書(shū)由張鐵紅、張繼山、那銳擔任主編,林徐、孫帥、諶婧嬌、王云擔任副主編,參與編寫(xiě)的還有何姍姍。本書(shū)的編寫(xiě)得到北京百知教育科技有限公司和中國水利水電出版社的大力支持,在此表示感謝。
由于時(shí)間倉促,加之編者水平有限,書(shū)中難免存在不足之處,懇請讀者提出寶貴的意見(jiàn)和建議。
編 者
2022年5月
1.1 Hive的工作原理 1
1.2 Hive的數據類(lèi)型 2
1.3 Hive的特點(diǎn) 3
本章小結 4
習題1 4
第2章 Hive架構 6
2.1 Hive用戶(hù)接口 6
2.1.1 Hive CLI 6
2.1.2 HWI 7
2.1.3 Thrift服務(wù) 11
2.2 Hive元數據庫 12
2.2.1 Hive元數據表結構 12
2.2.2 Hive元數據的三種存儲模式 13
2.3 Hive數據存儲 14
2.4 Hive文件格式 15
2.4.1 TextFile格式 15
2.4.2 SequenceFile格式 15
2.4.3 RCFile格式 15
2.4.4 ORC格式 15
本章小結 17
習題2 17
第3章 HiveQL表操作 19
3.1 內部表 19
3.2 外部表 23
3.3 分區表 25
3.3.1 靜態(tài)分區 27
3.3.2 動(dòng)態(tài)分區 28
3.4 桶表 30
3.5 視圖 32
3.5.1 使用視圖降低查詢(xún)復雜度 33
3.5.2 使用視圖來(lái)限制基于條件過(guò)濾的數據 33
3.5.3 動(dòng)態(tài)分區中的視圖和map類(lèi)型 34
本章小結 34
習題3 34
第4章 HiveQL數據操作 36
4.1 裝載數據到表中 36
4.2 通過(guò)查詢(xún)語(yǔ)句向表中插入數據 37
4.3 單個(gè)查詢(xún)語(yǔ)句中創(chuàng )建并加載數據 39
4.4 導出數據 39
本章小結 39
習題4 40
第5章 HiveQL查詢(xún) 42
5.1 select...from語(yǔ)句 42
5.1.1 使用正則表達式來(lái)指定列 43
5.1.2 使用列值進(jìn)行計算 43
5.1.3 算術(shù)運算符 44
5.1.4 函數 45
5.1.5 limit語(yǔ)句 48
5.1.6 列別名 49
5.1.7 嵌套select語(yǔ)句 49
5.1.8 case...when...then語(yǔ)句 49
5.2 where語(yǔ)句 49
5.2.1 謂詞操作符 50
5.2.2 關(guān)于浮點(diǎn)數比較 51
5.2.3 like和rlike 52
5.3 group by語(yǔ)句 53
5.4 join語(yǔ)句 54
5.4.1 inner join 54
5.4.2 join優(yōu)化 55
5.4.3 left outer join 56
5.4.4 right outer join 56
5.4.5 full outer join 56
5.4.6 left semi join 57
5.4.7 笛卡兒積join 57
5.4.8 map-side join 58
5.5 order by和sort by 58
5.6 含有sort by的distribute by 59
5.7 cluster by 60
5.8 類(lèi)型轉換 60
5.9 抽樣查詢(xún) 61
5.9.1 數據塊抽樣 61
5.9.2 分桶表的輸入裁剪 62
5.10 union all 62
本章小結 63
習題5 63
第6章 Hive配置與應用 65
6.1 Hive安裝與配置 65
6.2 Hive訪(fǎng)問(wèn) 68
6.3 Hive基本操作 70
6.3.1 Hive CLI命令行操作講解 70
6.3.2 Hive的數據類(lèi)型 74
6.3.3 Hive表的創(chuàng )建 75
6.3.4 Hive數據導入 76
6.3.5 Hive數據導出 78
6.4 Hive數據定義 80
6.4.1 內部表與外部表的區別 80
6.4.2 內部表的創(chuàng )建 80
6.4.3 外部表的創(chuàng )建 82
6.4.4 表的分區與桶的建立 83
6.4.5 刪除表與修改表結構 89
6.4.6 HiveQL簡(jiǎn)單查詢(xún)語(yǔ)句 90
6.4.7 where語(yǔ)句 93
6.5 Hive高級查詢(xún) 93
本章小結 99
習題6 100
第7章 Hive自定義函數 102
7.1 UDF 102
7.2 UDTF 105
7.3 UDAF 107
7.4 Hive函數綜合案例 112
7.4.1 Row_Sequence實(shí)現列自增長(cháng) 112
7.4.2 列轉行和行轉列 113
本章小結 116
習題7 116
第8章 Hive綜合案例(一) 118
8.1 項目背景與數據情況 118
8.2 關(guān)鍵績(jì)效指標 119
8.3 開(kāi)發(fā)步驟分析 120
8.4 表結構設計 120
8.5 數據清洗過(guò)程 121
8.5.1 定期上傳日志至HDFS 121
8.5.2 編寫(xiě)MapReduce程序清理日志 122
8.5.3 定期清理日志至HDFS 124
8.5.4 查詢(xún)清洗前后的數據 124
8.6 數據統計分析 125
8.6.1 借助Hive進(jìn)行統計 125
8.6.2 使用HiveQL統計關(guān)鍵指標 125
本章小結 126
第9章 Hive綜合案例(二) 127
9.1 項目應用場(chǎng)景 127
9.2 設計與實(shí)現 127
9.2.1 日志格式分析 127
9.2.2 建立表 127
9.2.3 程序設計 128
9.2.4 編碼實(shí)現 129
9.2.5 運行并測試 130
本章小結 131
第10章 Hive綜合案例(三) 132
10.1 應用場(chǎng)景 132
10.2 設計與實(shí)現 132
10.2.1 數據處理 132
10.2.2 使用Hive對清洗后的數據進(jìn)行多維分析 134
10.2.3 在MySQL中建立數據庫 137
10.2.4 使用Sqoop把分析結果導入到 MySQL中 138
10.2.5 程序設計與實(shí)現 139
10.2.6 運行并測試 139
本章小結 140
附錄1 部分類(lèi)代碼 141
附錄2 MySQL安裝 153
- 輸水管線(xiàn)工程風(fēng)險管理 [張勇 黨亥生 著(zhù)]
- 民用航空飛機標準線(xiàn)路施工 [主編 王志敏 陳明]
- 不息的水脈—大運河講談錄 [趙珩 著(zhù)]
- 實(shí)用運籌學(xué) [主編 邢育紅 于晉臣]
- 三峽梯級電站水資源決策支持系統研究與開(kāi)發(fā) [姚華明 潘紅忠 湯正]
- 海南黎族民俗文化鑒賞 [龐國華 著(zhù)]
- 石墨烯在太赫茲及中紅外頻段電磁器件設計中的應用 [李艷秀 莊華偉 著(zhù)]
- 電子技術(shù)(第二版) [主編 覃愛(ài)娜 李飛]
- 辦公自動(dòng)化高級應用 [陳萍 朱曉玉]
- 信息處理技術(shù)員考試32小時(shí)通關(guān) [薛大龍]
- 電子產(chǎn)品設計案例教程(微課版)—基于嘉立創(chuàng )EDA(專(zhuān)業(yè)版) [王靜 莫志宏 陳學(xué)昌 丁紅]
- C程序設計實(shí)踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- Web技術(shù)開(kāi)發(fā)教程(基于.NET開(kāi)源MVC框架) [王合闖 韓紅玲 王青正 陳海蕊]
- 商務(wù)英語(yǔ)翻譯教程(筆譯)(第四版) [主編 王軍平]
- 智慧零售技術(shù)與應用 [洪旭 著(zhù)]
- 建設工程法規實(shí)務(wù) [主編 余瀅]
- 商務(wù)秘書(shū)理論與實(shí)務(wù)(第三版) [主編 張同欽]
- 程序設計基礎實(shí)踐教程(C/C++語(yǔ)言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動(dòng)爭議處理實(shí)務(wù) [主編 王秀卿 羅靜]
- 工程數學(xué) [主編 郭立娟 王海]
- 語(yǔ)音識別理論與實(shí)踐 [主編 莫宏偉]
- 信息系統項目管理師章節習題與考點(diǎn)特訓(第二版) [主編 薛大龍]
- 武術(shù)基礎教程 [主編 李代勇 謝志民]
- 計算機網(wǎng)絡(luò )實(shí)訓教程 [主編 張浩軍 趙玉娟]
- 畫(huà)法幾何與機械制圖習題集(多學(xué)時(shí)) [主編 趙軍]
- HCIA-Datacom認證題庫分類(lèi)精講 [主 編 韓立剛]
- SwiftUI完全開(kāi)發(fā) [李智威 著(zhù)]
- 網(wǎng)絡(luò )規劃設計師備考一本通 [夏杰 編著(zhù)]