Hive起源于Facebook,是一个基于Hadoop的数据仓库工具,同时也是Hadoop的一个主要子项目。Hive提供了一系列的工具,可以用来进行数据的提取、转换和加载(ETL),同时可以实现对Hadoop中大规模数据的存储、查询和分析。Hive定义了一种简单的类似SQL语言——HiveQL。
HiveQL使熟悉SQL的用户可以很方便地在Hadoop中査询数据。同时Hive还有很强的灵活性,没有将用户限制在一个框架中,主要表现在当Hive内建的Mapper和Reducer不能满足用户的需求时,用户可以通过Map/Reduce将自己开发的Mapper和Reducer加入到Hive,以满足用户特殊的需求。
HiveQL使熟悉SQL的用户可以很方便地在Hadoop中査询数据。同时Hive还有很强的灵活性,没有将用户限制在一个框架中,主要表现在当Hive内建的Mapper和Reducer不能满足用户的需求时,用户可以通过Map/Reduce将自己开发的Mapper和Reducer加入到Hive,以满足用户特殊的需求。
Hive云计算系统没有定义所谓的Hive格式的数据,可以在Thift上很好地工作,控制分隔符,甚至可以自己定义数据格式。
作为Hadoop的主要子项目,Hive秉承开源的精神,在不断地发展中,不断有新的特性加入其中。现在已经增加和森要增加的一些新特性如下:
(1)增加了用于收集分区和列的水平统计数值的命令;
(2)支持在Partition级别去更改Bucket的数量;
(3)在Hive中实现检索;.
(4)为班仰增加并发模型;
(5)支持在两个或两个以上列中的差别选择;
(6)利用bloom过滤器提高连接的效果;
(7)建立Hive的授权结构和认证结构;
(8)在Hive中使用位图检索。