Hive Over HBase的介绍

Hive Over HBase是基于Hive的HQL查询引擎支持对hbase表提供及时查询的功能,它并不是将hql语句翻译成mapreduce来运行,其响应时间在秒级别。

特性

支持的字段类型:

boolean, tinyint, smallint, int, bigint, float, double, string, struct
(当hbase中的rowkey字段为struct类型,请将子字段定义为string类型,同时指定表的collection items terminated分隔字符以及各字段的长度参数:hbase.rowkey.column.length)

支持的sql语法:

  • where子句
  • group by,having子句
  • 聚合函数: count, max, min, sum, avg
  • order by with limit(top N)
  • limit 子句
  • explain

支持的运算

  • 关系操作:>, >=, <=, <, =
  • 算术操作:+, - , * , / , %
  • 逻辑操作:and, or, not
  • 字符串操作函数: substring, concat
  • Distinct : 支持select distinct <col-list> from <tab> where <expr>, select aggr-fun(distinct <col_list>) from <tab> where <expr>
  • Like: 通配符’_’, ’%’
  • Case when子句

不支持:

  • Sub-query
  • Join
  • Union

原理

扩展HBase客户端代码,实现简单聚合计算,基于协作器实现分组计算的功能,并且修改hive的查询引擎,将HQL语句转换成HBase的Task,然后调用HBase中的api实现对HQL语句的解析。

源码

暂时不公开。


转载: http://blog.javachen.com/2014/06/12/intro-of-hive-over-hbase/


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值