我想知道是否有办法在HBase中获取特定rowkey的先前版本,而无需编写MapReduce程序并将值平均化。我很好奇这是否可以使用Hive或Impala(或其他类似的程序)以及你将如何做到这一点。
我的表格如下:
Composite keys Values
(md5 + date + id) | (value)
我想平均所有版本的特定日期的所有值和id(“411”)的子字符串。
提前致谢。
答案 0 :(得分:0)
Impala使用Hive Metastore将其逻辑概念映射到物理存储在HDFS或HBase中的数据(有关详细信息,请参阅Cloudera documentation)。
要详细了解如何告知Hive Metastore存储在HBase中的数据,请参阅Hive documentation。
不幸的是,如上面链接的Hive文档中所述:
目前无法访问HBase timestamp属性,并且 查询始终使用最新时间戳
访问数据
在HIVE-2828中针对较早版本的Hive添加此功能已经做了一些工作,但不幸的是,这项工作尚未合并到主干中。
因此,对于您的应用程序,您必须重新设计HBase架构以包含"版本"列,告诉Hive Metastore有关此新列的信息,并让您的应用程序知道此列。