前言


大数据是信息化发展的新阶段,随着全球数据存储量的不断提高,大数据正进入发展加速时期。近年来,随着5G、AI、云计算、区块链等新一代信息技术的蓬勃发展,大数据技术走向融合发展的关键阶段。同时,我国大数据产业保持良好发展势头,“大数据+行业”渗透融合全面展开,融合生态加速构建,新技术、新业态、新模式不断涌现,政策支持、战略引领、标准规范、产业创新的良性互动局面正在形成。
随着大数据时代的到来,各企业都积累了大量的数据,随着数据量的不断增长,企业不仅需要花费巨大的硬件成本来存储这些数据,而且还需要人员成本来维护这些数据。对于一个企业来说,如果只是单纯地存储和维护这些数据,那么这些数据将变得毫无价值,只是一种单纯的消耗品,于是企业开始利用这些持续不断增长的数据,从中挖掘出具有潜在商业价值的信息,帮助企业从数据中获取经验,从而为企业创造有效价值。对于这些积累下来的大量数据,通常称为离线数据。常见的离线计算框架有MapReduce和Spark,然而使用这些框架需要开发人员至少拥有Java语言的基础,对于那些熟悉使用SQL的传统数据分析人员来说并不能得心应手,于是一个全新的技术——Hive离线处理工具进入了大众的视野。
Hive提出海量数据可以继续沿用传统数据分析方法——SQL语句来处理的思想,开发人员不需要学习新的计算机语言而继续使用熟悉的SQL结构化查询语句来处理大规模的数据,Hive中的SQL语句称为HiveQL查询语句,HiveQL查询语句的语法结构与传统SQL语句的语法结构几乎一样。Hive运行在Hadoop分布式系统中,这使得Hive不仅可以使用HDFS进行分布式存储,还可以通过MapReduce分布式计算框架来查询数据,相比于传统数据仓库来说,Hive在存储性能和查询效率上都得到了很好的提升。
本书带领大家认识Hive的相关技术。通过学习本书,使读者对Hive有深刻的认识,本书共分为9章,接下来分别对每章所讲解的知识内容进行简要介绍。
第1章主要从数据仓库和Hive的理论知识出发,讲解数据仓库和Hive的相关概念,包括数据仓库分层、数据仓库的数据模型、Hive架构、Hive工作原理等内容。
第2章讲解如何部署Hive的嵌入模式、本地模式和远程模式,本章从0开始教会读者如何部署Hive,其中包括虚拟机的创建、Linux操作系统的安装与配置、Hadoop高可用集群的部署等内容。
第3章主要讲解了Hive数据定义语言的相关操作,包括数据库的基本操作、数据表的基本操作,以及分区表、分桶表、临时表、视图和索引的相关操作。
第4章主要讲解了Hive数据操作语言的相关操作,包括加载文件、基本查询、插入数据以及IMPORT和EXPORT。
第5章主要讲解了Hive数据查询语言的相关操作,包括SELECT句式分析、Hive运算符、公用表表达式、分组操作、排序操作、UNION语句、JOIN语句以及抽样查询。
第6章主要讲解了Hive函数的相关操作,针对Hive的内置函数和自定义函数两方面进行详细讲解。
第7章主要讲解了Hive事务的相关概念和操作,包括ACID概述、Hive事务的设计与实现、开启Hive事务、事务表的更新操作和删除操作。
第8章主要讲解了Hive优化的相关知识,包括Hive存储优化、Hive参数优化和HiveQL语句优化技巧。
第9章讲解了一个综合项目——教育大数据分析平台,主要针对Hive数据仓库在实际应用中涉及的相关知识内容进行详细讲解,包括使用Hive实现数据仓库分层、数据转换、数据分析,以及相关大数据工具Sqoop和FineBI的使用。

致谢
本书的编写和整理由江苏传智播客教育科技股份有限公司教材研发中心完成,主要参与人员有高美云、张明强、李丹等,全体人员在近一年的编写过程中付出了许多辛勤的汗水。除此之外,还有传智播客600多名学员参与了本书的试读工作,他们站在初学者的角度对本书提供了许多宝贵的修改意见,在此一并表示衷心的感谢。

意见反馈
尽管我们尽了最大的努力,但书中难免会有不妥之处,欢迎各界专家和读者来信给予宝贵意见,我们将不胜感激。您在阅读本书时,如果发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。
请发送电子邮件至: itcast_book@vip.sina.com。

江苏传智播客教育科技股份有限公司教材研发中心2021年5月于北京