我们已经知道,HBase数据库没有类SQL的查询方式,因此在实际的业务中操作和计算数据非常不方便。而Hive支持标准的SQL语法(HiveQL),若将Hive与HBase集成,则可以通过HiveQL直接对HBase的表进行读写操作,让HBase支持JOIN、GROUP等SQL查询语法,完成复杂的数据分析。甚至可以通过连接和联合将对HBase表的访问与Hive表的访问结合起来进行统计与分析。
Hive集成HBase的原理
Hive与HBase集成的实现是利用两者本身对外的API接口互相通信来完成的,其具体工作由Hive安装主目录下的lib文件夹中的hive-hbase-handler-x.y.z.jar工具类来实现。
Hive与HBase集成的核心是将Hive中的表与HBase中的表进行绑定,绑定的关键是HBase中的表如何与Hive中的表在列级别上建立映射关系。例如,HBase中有一张表hbase_table,该表的数据模型如图
则对应Hive表的数据模型如图