Hive编程技术与应用(第二版)
-
【作 者】张铁红 张继山 那锐
【I S B N 】978-7-5226-1170-9
【责任编辑】赵佳琦
【适用读者群】本专通用
【出版时间】2023-01-18
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第1版第1次印刷
【页 数】160
【千字数】250
【印 张】10
【定 价】¥36
【丛 书】普通高等教育数据科学与大数据技术专业教材
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书通过原理加案例的方式系统地讲解了Hive编程技术,使读者能够全面地了解使用Hive的开发流程。书中精心安排了Hive的原理分析、架构特点、环境搭建、HiveQL使用等内容,给出了大量的开发案例及其开发过程,使读者对Hive开发有直观的印象。
全书共10章:第1~7章系统讲解Hive工作原理、特点,Hive架构,HiveQL表操作,HiveQL数据操作,HiveQL查询,Hive配置与应用,Hive自定义函数;第8~10章是综合案例部分,通过案例帮助读者掌握整个大数据项目的开发流程,包括数据清洗、数据处理、数据导入与导出。本书知识结构简单明了,案例生动具体,内容设计新颖,思路清晰。
本书不仅可作为普通高校大数据相关专业的教材,也可以作为想继续深入了解大数据编程的读者的参考书,还可作为各类相关培训班的培训教材。
本书配有电子教案,读者可以从中国水利水电出版社网站(www.waterpub.com.cn)或万水书苑网站(www.wsbookshow.com)免费下载。
内容实用——理论与实践结合,重点突出应用
体系完善——构建完整的大数据专业解决方案
产教融合——高校企业共参与,对标行业标准
资源丰富——微课、课件、教案、源码、答案
再 版 前 言
现在是大数据时代,我们正以前所未有的速度和规模产生数据。数据资产正在成为与土地、资本、人力并驾齐驱的关键生产要素,并在社会、经济、科学研究等方面颠覆人们探索世界的方法,驱动产业间的融合与分立。大数据是用来描述巨大数据规模、复杂数据类型的数据集,它本身蕴含着丰富的价值。对这些数据的分析处理促进了许多优秀的海量数据分析平台的产生,Hadoop平台就是当前最为主流的一款。
Hive是Hadoop生态系统中必不可少的一个工具,它提供了一种SQL语言,可以查询存储在HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)中的数据或者Hadoop支持的其他文件系统,如MapR-FS、Amazon S3、HBase和Cassandra。Hive降低了应用程序迁移到Hadoop集群的复杂度,掌握SQL语句的开发人员可以轻松地学习并使用Hive。
本书在第一版的基础上修订了差错,升级软件版本并配套了微课资源和习题。全书共分10章,其中不仅有详细的理论讲解,还有大量的实战操作。具体内容如下:
第1章首先介绍了Hive的基本工作原理及HiveQL语句在Hive中执行的具体流程;其次介绍了Hive中的数据类型,主要包括基本数据类型和复杂数据类型;最后介绍了Hive的特点。
第2章详细介绍了Hive的基本架构,主要包括Hive的相关用户接口、Hive元数据库中的表结构和三种存储方式、Hive数据存储中的相关概念、Hive中文件格式的不同特性和区别。
第3章介绍了HiveQL的相关表操作。
第4章介绍了HiveQL的相关数据操作,主要包括数据的导入和导出。
第5章介绍了HiveQL查询语句中的不同语法和使用方式。
第6章介绍了Hive的完整安装过程。在此基础上给出Hive的不同访问方式,并基于Hive CLI方式给出相关操作的介绍,同时给出Hive数据定义的相关操作。
第7章介绍了Hive的自定义函数,给出了UDF、UDTF、UDAF各自的函数实现方式,并给出了具体的实现源码。
第8~10章给出了Hive的相关综合案例,将之前章节的内容通过实际案例串联起来,达到最终应用的目的。
本书由张铁红、张继山、那锐担任主编,林徐、孙帅、谌婧娇、王云担任副主编,参与编写的还有何姗姗。本书的编写得到北京百知教育科技有限公司和中国水利水电出版社的大力支持,在此表示感谢。
由于时间仓促,加之编者水平有限,书中难免存在不足之处,恳请读者提出宝贵的意见和建议。
编 者
2022年5月
1.1 Hive的工作原理 1
1.2 Hive的数据类型 2
1.3 Hive的特点 3
本章小结 4
习题1 4
第2章 Hive架构 6
2.1 Hive用户接口 6
2.1.1 Hive CLI 6
2.1.2 HWI 7
2.1.3 Thrift服务 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 静态分区 27
3.3.2 动态分区 28
3.4 桶表 30
3.5 视图 32
3.5.1 使用视图降低查询复杂度 33
3.5.2 使用视图来限制基于条件过滤的数据 33
3.5.3 动态分区中的视图和map类型 34
本章小结 34
习题3 34
第4章 HiveQL数据操作 36
4.1 装载数据到表中 36
4.2 通过查询语句向表中插入数据 37
4.3 单个查询语句中创建并加载数据 39
4.4 导出数据 39
本章小结 39
习题4 40
第5章 HiveQL查询 42
5.1 select...from语句 42
5.1.1 使用正则表达式来指定列 43
5.1.2 使用列值进行计算 43
5.1.3 算术运算符 44
5.1.4 函数 45
5.1.5 limit语句 48
5.1.6 列别名 49
5.1.7 嵌套select语句 49
5.1.8 case...when...then语句 49
5.2 where语句 49
5.2.1 谓词操作符 50
5.2.2 关于浮点数比较 51
5.2.3 like和rlike 52
5.3 group by语句 53
5.4 join语句 54
5.4.1 inner join 54
5.4.2 join优化 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 类型转换 60
5.9 抽样查询 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访问 68
6.3 Hive基本操作 70
6.3.1 Hive CLI命令行操作讲解 70
6.3.2 Hive的数据类型 74
6.3.3 Hive表的创建 75
6.3.4 Hive数据导入 76
6.3.5 Hive数据导出 78
6.4 Hive数据定义 80
6.4.1 内部表与外部表的区别 80
6.4.2 内部表的创建 80
6.4.3 外部表的创建 82
6.4.4 表的分区与桶的建立 83
6.4.5 删除表与修改表结构 89
6.4.6 HiveQL简单查询语句 90
6.4.7 where语句 93
6.5 Hive高级查询 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实现列自增长 112
7.4.2 列转行和行转列 113
本章小结 116
习题7 116
第8章 Hive综合案例(一) 118
8.1 项目背景与数据情况 118
8.2 关键绩效指标 119
8.3 开发步骤分析 120
8.4 表结构设计 120
8.5 数据清洗过程 121
8.5.1 定期上传日志至HDFS 121
8.5.2 编写MapReduce程序清理日志 122
8.5.3 定期清理日志至HDFS 124
8.5.4 查询清洗前后的数据 124
8.6 数据统计分析 125
8.6.1 借助Hive进行统计 125
8.6.2 使用HiveQL统计关键指标 125
本章小结 126
第9章 Hive综合案例(二) 127
9.1 项目应用场景 127
9.2 设计与实现 127
9.2.1 日志格式分析 127
9.2.2 建立表 127
9.2.3 程序设计 128
9.2.4 编码实现 129
9.2.5 运行并测试 130
本章小结 131
第10章 Hive综合案例(三) 132
10.1 应用场景 132
10.2 设计与实现 132
10.2.1 数据处理 132
10.2.2 使用Hive对清洗后的数据进行多维分析 134
10.2.3 在MySQL中建立数据库 137
10.2.4 使用Sqoop把分析结果导入到 MySQL中 138
10.2.5 程序设计与实现 139
10.2.6 运行并测试 139
本章小结 140
附录1 部分类代码 141
附录2 MySQL安装 153
- 新概念英语单词(全四册)循环速记一本通 [周琨 编著]
- Windows Server 2016网络操作系统 [孟凡楼 刘洋]
- HTML5+CSS3网页设计与制作项目化教程 [范佳 胡卓舒 冯迎]
- 水利水电工程金属结构和机电设备制造监理工作指南 [主编 张小阳]
- 广西瑶族传统服饰文化研究 [容婷 著]
- 面向知识元的领域信息抽取与图谱构建 [朱小龙 著]
- 电子产品设计与制作 [黄荻 陈志漫]
- 数据库原理与实践(MySQL版) [杨俊杰 刘忠艳]
- 南阳汉代画像石造型语言研究 [庞国华 著]
- C语言程序设计(第三版) [主编 丁红 王立新 蔡开立]
- 民航客舱服务实用英语教程 [主编 田静 徐亚玲]
- 软考论文高分特训与范文10篇—信息系统项目管理师(第二版) [主编 薛大龙]
- Python数据分析 [主编 冯志辉 赵磊 李放]
- 大学信息技术 [曾翰颖 编著]
- 大学生创新创业基础 [主 编 李婷 张玉萍]
- Python程序设计与应用(第二版) [主编 张广渊]
- 多维视域下的高校篮球教学创新研究 [张利超 李宁 著]
- 创新创业训练实践教程 [主编 王日华 陈武 黄喆诚]
- 智能控制导论(第四版) [蔡自兴 编著]
- 输水管线工程风险管理 [张勇 党亥生 著]
- 民用航空飞机标准线路施工 [主编 王志敏 陈明]
- 不息的水脉—大运河讲谈录 [赵珩 著]
- 实用运筹学 [主编 邢育红 于晋臣]
- 三峡梯级电站水资源决策支持系统研究与开发 [姚华明 潘红忠 汤正]
- 海南黎族民俗文化鉴赏 [庞国华 著]
- 石墨烯在太赫兹及中红外频段电磁器件设计中的应用 [李艳秀 庄华伟 著]
- 电子技术(第二版) [主编 覃爱娜 李飞]
- 办公自动化高级应用 [陈萍 朱晓玉]
- 信息处理技术员考试32小时通关 [薛大龙]
- 电子产品设计案例教程(微课版)—基于嘉立创EDA(专业版) [王静 莫志宏 陈学昌 丁红]