0

我想知道是否有一种方法可以在 HBase 中获取特定行键的先前版本,而无需编写 MapReduce 程序并对值进行平均。我很好奇这是否可以使用 Hive 或 Impala(或其他类似程序)以及您将如何做到这一点。

我的表如下所示:

  Composite keys          Values 
  (md5 + date + id) | (value)

我想平均所有版本的特定日期的所有值和 id 的子字符串(“411”)。

提前谢谢。

4

1 回答 1

0

Impala 使用 Hive 元存储将其表的逻辑概念映射到物理存储在 HDFS 或 HBase 中的数据(有关更多详细信息,请参阅Cloudera 文档)。

要了解有关如何告知 Hive 元存储存储在 HBase 中的数据的更多信息,请参阅Hive 文档

不幸的是,如上面链接的 Hive 文档中所述:

目前没有办法访问 HBase 时间戳属性,查询总是访问最新时间戳的数据

HIVE-2828中针对旧版本的 Hive 添加了此功能,但不幸的是,该工作尚未合并到主干中。

因此,对于您的应用程序,您必须重新设计您的 HBase 模式以包含“版本”列,将这个新列告知 Hive 元存储,并使您的应用程序知道该列。

于 2014-04-23T18:58:44.800 回答