软件测试Python专家之路python数据分析人工智能机器学习程序员

HIVE快速入门教程1简介

2019-05-27  本文已影响11人  python测试开发

Apache Hive可以帮助您快速查询和管理大型数据集。 它是Hadoop生态系统的ETL工具。 在本教程中,您将学习Hive的重要主题,如HQL查询,数据提取,分区,bucket等。

Hive简介

Hive是在Hadoop之上开发的。 它是一个数据仓库框架,用于查询和分析存储在HDFS中的数据。 Hive是一个开源软件,可以让程序员在Hadoop上分析大型数据集。

在业界收集和分析商业智能的数据集的大小正在增长,并且在某种程度上,它使传统的数据仓库解决方案更加昂贵。 带有MapReduce框架的Hadoop被用作分析大数据集的替代解决方案。 虽然Hadoop已经证明对于处理大型数据集非常有用,但它的MapReduce框架水平非常低,它要求程序员编写难以维护和重用的自定义程序。

Hive演变为基于Hadoop Map-Reduce框架构建的数据仓库解决方案。

Hive提供类似SQL的声明性语言,称为HiveQL ,用于表达查询。 使用与SQL关联的Hive-QL用户可以非常轻松地执行数据分析。

Hive引擎将这些查询编译为要在Hadoop上执行的Map-Reduce作业。 此外,还可以将自定义Map-Reduce脚本插入查询中。 Hive对存储在表中的数据进行操作,这些数据由原始数据类型和集合数据类型(如数组和映射)组成。

Hive附带一个命令行shell接口,可用于创建表和执行查询。

Hive查询语言类似于SQL,它支持子查询。 使用Hive查询语言,可以跨Hive表进行MapReduce连接。 它支持简单的SQL函数 -CONCAT,SUBSTR,ROUND等,以及聚合函数 - SUM,COUNT,MAX等。它还支持GROUP BY和SORT BY子句。 也可以在Hive查询语言中编写用户定义的函数。

参考资料

Hive Vs Map Reduce

在Hive和Map之间进行选择时,需要考虑以下因素;

特征 Hive Map Reduce
语言 它支持SQL,如用于交互和数据建模的查询语言 编译语言,其中包含两个主要任务。 一个是map任务,另一个是reducer。可以使用Java或Python定义这些任务
抽象程度 基于HDFS的更高级别象 较低的抽象层次
代码效率 比Map Reduce相对低效 高效率
代码 开发量较少 开发量较多
上一篇下一篇

猜你喜欢

热点阅读