HBase如何按时间戳排序

时间:2018-07-16 13:08:13

标签: hbase

我想从HBase中的数据中获取所有信息,例如两个时间戳之间的数据,并且所有数据都应按时间戳排序

首先,我想在Hbase shell中尝试一下性能。

在RDBMS中查询可能类似于

从表start_date>中选择column1,column2  timestamp和end_date <由start_date desc限制10的时间戳顺序

降序顺序在这里最重要

2 个答案:

答案 0 :(得分:1)

性能一点也不好-您必须扫描表中的每一行,以找到相关时间戳之间的所有行,然后对结果进行排序。在HBase Shell中无法进行排序。

考虑以时间戳为键的辅助索引表,并链接回主表。

作为替代方案,请查看Apache Phoenix以在HBase上实现类似SQL的功能。

答案 1 :(得分:0)

您甚至可以使用Apache Drill在Hbase上执行sql查询。

对于Hbase Shell,您可以使用

https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/io/TimeRange.html

这里t1 =>表格名称 时间范围是纪元时间

如果您可以编码并找到该链接的去处

{{1}}

它具有您期待的所有可用功能。