我想从HBase中的数据中获取所有信息,例如两个时间戳之间的数据,并且所有数据都应按时间戳排序
首先,我想在Hbase shell中尝试一下性能。
在RDBMS中查询可能类似于
从表start_date>中选择column1,column2 timestamp和end_date <由start_date desc限制10的时间戳顺序
降序顺序在这里最重要
答案 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}}
它具有您期待的所有可用功能。