Hive编程技术与应用

-
【作 者】孙帅 王美佳
【I S B N 】978-7-5170-6914-0
【责任编辑】张玉玲
【适用读者群】本专通用
【出版时间】2018-10-15
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第1版第1次印刷
【页 数】160
【千字数】242
【印 张】10
【定 价】¥28
【丛 书】普通高等教育数据科学与大数据技术专业教材
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书通过原理加案例的方式系统地讲解了Hive编程技术,使读者能够全面地了解使用Hive的开发流程。书中精心安排了Hive的原理分析、架构特点、环境搭建、HiveQL使用等内容,给出了大量的开发案例及其开发过程,使读者对Hive开发有直观的印象。
全书共10章:前6章系统讲解Hive工作原理、特点,Hive架构,HiveQL表操作,HiveQL数据操作,HiveQL查询,Hive安装与配置,Hive自定义函数;第8~10章是综合案例部分,通过案例帮助读者掌握整个大数据项目的开发流程,包括数据清洗、数据处理、数据导入导出。本书知识结构简单明了,案例生动具体,内容设计新颖,思路清晰。
本书不仅可作为普通高校大数据相关专业的教材,也可以作为想继续深入了解大数据编程的读者的参考书,还可作为各类相关培训班的培训教材。
本书详细介绍了Hive 的基本架构,系统讲解了Hive 编程技术;精心安排了Hive 的原理分析、架构特点、环境搭建、HiveQL 使用等内容。全书内容丰富、重点突出、简明易懂,突出理论与案例相结合的形式,章节设计循序渐进、深入浅出。
现在是大数据时代,我们正以前所未有的速度和规模产生数据。数据资产正在成为与土地、资本、人力并驾齐驱的关键生产要素,并在社会、经济、科学研究等方面颠覆人们探索世界的方法、驱动产业间的融合与分立。大数据是用来描述数据规模巨大、数据类型复杂的数据集,它本身蕴含着丰富的价值。对这些数据的分析处理促进了许多优秀的海量数据分析平台的产生,Hadoop平台就是当前最为主流的一款。
Hive是Hadoop生态系统中必不可少的一个工具,它提供了一种SQL语言,可以查询存储在HDFS中的数据或者其他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的相关综合案例,将之前章节的内容通过实际案例串联起来,达到最终应用的目的。
本书由孙帅、王美佳任主编。其中第1~2章由孙帅编写,第3~6章由王美佳编写,第7章由李紫薇编写,第8章由邹先锋编写,第9章由张美娟编写,第10章由臧红久编写。本书的编写得到北京百知教育科技有限公司的大力支持,在此表示感谢。
由于时间仓促,加之编者水平有限,本书难免存在不足之处,恳请读者对本书提出宝贵的意见和建议。
编 者
2018年5月
1.1 Hive工作原理 1
1.2 Hive的数据类型 2
1.3 Hive的特点 4
1.4 本章小结 4
第2章 Hive架构 5
2.1 Hive用户接口 5
2.1.1 Hive CLI 5
2.1.2 HWI 6
2.1.3 Thrift服务 10
2.2 Hive元数据库 11
2.2.1 Hive元数据表结构 11
2.2.2 Hive元数据的三种存储模式 12
2.3 Hive数据存储 13
2.4 Hive文件格式 14
2.4.1 TextFile格式 14
2.4.2 SequenceFile格式 14
2.4.3 RCFile格式 14
2.4.4 ORC格式 15
2.5 本章小结 16
第3章 HiveQL表操作 17
3.1 内部表 17
3.2 外部表 21
3.3 分区表 23
3.3.1 静态分区 25
3.3.2 动态分区 27
3.4 桶表 28
3.5 视图 30
3.5.1 使用视图降低查询复杂度 31
3.5.2 使用视图来限制基于条件过滤
的数据 32
3.5.3 动态分区中的视图和map类型 32
3.6 本章小结 33
第4章 HiveQL数据操作 34
4.1 装载数据到表中 34
4.2 通过查询语句向表中插入数据 35
4.3 单个查询语句中创建并加载数据 37
4.4 导出数据 37
4.5 本章小结 38
第5章 HiveQL查询 39
5.1 SELECT…FROM语句 39
5.1.1 使用正则表达式来指定列的 40
5.1.2 使用列值进行计算 41
5.1.3 算述运算符 41
5.1.4 使用函数 42
5.1.5 LIMIT语句 46
5.1.6 列别名 46
5.1.7 嵌套SELECT语句 46
5.1.8 CASE…WHEN…THEN语句 46
5.2 WHERE语句 47
5.2.1 谓词操作符 48
5.2.2 关于浮点数比较 49
5.2.3 LIKE和RLIKE 50
5.3 GROUP BY语句 50
5.4 JOIN语句 51
5.4.1 INNER JOIN 51
5.4.2 JOIN优化 53
5.4.3 LEFT OUTER JOIN 53
5.4.4 RIGHT OUTER JOIN 54
5.4.5 FULL OUTER JOIN 54
5.4.6 LEFT SEMI JOIN 54
5.4.7 笛卡尔积JOIN 55
5.4.8 map-side JOIN 55
5.5 ORDER BY和SORT BY 56
5.6 含有SORT BY的DISTRIBUTE BY 57
5.7 CLUSTER BY 57
5.8 类型转换 58
5.9 抽样查询 58
5.9.1 数据块抽样 59
5.9.2 分桶表的输入裁剪 59
5.10 UNION ALL 60
5.11 本章小结 61
第6章 Hive配置与应用 62
6.1 Hive安装与配置 62
6.2 Hive访问 65
6.3 Hive基本操作 67
6.3.1 Hive CLI命令行操作讲解 67
6.3.2 Hive的数据类型 71
6.3.3 Hive表的创建 73
6.3.4 Hive数据导入 74
6.3.5 Hive数据导出 76
6.4 Hive数据定义 77
6.4.1 内部表与外部表的区别 77
6.4.2 内部表建立 77
6.4.3 外部表建立 79
6.4.4 表的分区与桶的建立 81
6.4.5 删除表与修改表结构 87
6.4.6 HiveQL简单查询语句 88
6.4.7 WHERE语句 91
6.5 Hive高级查询 91
6.6 本章小结 98
第7章 Hive自定义函数 99
7.1 UDF 99
7.2 UDTF 102
7.3 UDAF 105
7.4 Hive函数综合案例 109
7.4.1 Row_Sequence实现列自增长 109
7.4.2 列转行和行转列 111
7.5 本章小结 114
第8章 Hive综合案例(一) 115
8.1 项目背景与数据情况 115
8.2 关键指标KPI 116
8.3 开发步骤分析 116
8.4 表结构设计 117
8.5 数据清洗过程 118
8.5.1 定期上传日志至HDFS 118
8.5.2 编写MapReduce程序清理日志 119
8.5.3 定期清理日志至HDFS 121
8.5.4 查询清洗前后的数据 122
8.6 数据统计分析 122
8.6.1 借助Hive进行统计 122
8.6.2 使用HiveQL统计关键指标 123
8.7 本章小结 124
第9章 Hive综合案例(二) 125
9.1 项目应用场景 125
9.2 设计与实现 125
9.2.1 日志格式分析 125
9.2.2 建立表 125
9.2.3 程序设计 126
9.2.4 编码实现 127
9.2.5 运行并测试 129
9.3 本章小结 129
第10章 Hive综合案例(三) 130
10.1 应用场景 130
10.2 设计与实现 130
10.2.1 数据处理 130
10.2.2 使用Hive对清洗后的数据进行
多维分析 132
10.2.3 在MySQL中建立数据库 136
10.2.4 使用sqoop把分析结果导入到
MySQL中 136
10.2.5 程序设计与实现 138
10.2.6 运行并测试 138
10.3 本章总结 139
附录 140
- 零基础玩转国产大模型DeepSeek [徐永冰 张帅 编著]
- 网络工程师5天修炼(适配第6版考纲) [主编 朱小平 施游]
- 信息系统项目管理师考试32小时通关(适用第4版考纲) [薛大龙]
- 信息系统管理工程师考试32小时通关(适配第2版考纲) [薛大龙 刘伟]
- 土木工程材料检测实训 [洪晓江 达则晓丽 钱波]
- 科技信息检索与论文写作实用教程 [李振华]
- 传统山水画论解读与实践 [陈钠 著]
- Python数据库编程 [主编 殷树友 邢 翀]
- 计算机基础实训指导 [主编 袁春萍 朱妮]
- 嵌入式人工智能技术应用(数字教材) [主编 胡娜 杨国勇 晏廷荣]
- Vienna整流器技术 [桂存兵 著]
- 变频器与伺服应用 [陈刚 叶云飞]
- 物联网工程设计与实践 [汤琳 李敏]
- 炉边夜话——深入浅出话AI [汪建 著]
- 电商运营与管理 [钟肖英 陈潇]
- Java面向对象程序设计 [主编 姜春磊 陈虹洁]
- 信息技术基础(Windows 10+WPS Office)(微课版) [主编 石利平 田辉平 谢盛嘉]
- 人工智能应用 [主编 陈 萍 刘培培 陈孟军]
- 大学生职业发展与就业指导 [主编 刘志坚]
- 高级办公应用项目教程 [主编 屈晶 赵成丽]
- 微信小程序开发项目实战(微课版) [主编 黄龙泉 郭峰 朱倩]
- 企业档案工作实战宝典百问百答 [华俊 卢秀英 邵甜甜 著]
- 计算机网络原理及应用 [主编 唐继勇 叶坤 孙梦娜]
- 大学生创业基础 [主编 王丽莉 王 杨]
- 船舶辅机 [主编 王连海 于洋 姜淑翠]
- 大学生就业指导 [主编 王丽莉 董宴廷]
- 系统架构设计师章节习题与考点特训 [主编 薛大龙 邹月平]
- 高校学生工作探索与实践 [郭亮 著]
- 大学生情商管理 [方雄 著]
- 2023年长沙市会展业发展报告 [主编 周栋良]