Java 更改hbase时间戳排序以获取特定行的第一个版本
根据我的要求,我需要获得Hbase中特定行的第一个版本。假设以下Htable:Java 更改hbase时间戳排序以获取特定行的第一个版本,java,hbase,nosql,Java,Hbase,Nosql,根据我的要求,我需要获得Hbase中特定行的第一个版本。假设以下Htable: row_key cf1:c1 timestamp ---------------------------------------- 1 x t1 1 x t2 1 x t3 ...
row_key cf1:c1 timestamp
----------------------------------------
1 x t1
1 x t2
1 x t3
...
假设我想根据时间戳检索第(1)行的第一个版本。
首先,是否有用于此目的的hbase java方法?
第二,如果没有这样的方法,我可以通过获取行(1)的最后版本,将timestamp的排序顺序更改为DESC来检索这样的单元格吗?更改hbase的时间戳顺序有什么关系?您可以使用获取所有列,然后从列表中获取第一列
可能的替代解决办法:
- 将第一个值存储在单独的列中。这将需要不同的代码来插入和更新单元格
- 手动将时间戳设置为
。在这种情况下,请确保单元的最大版本数足够高,否则最新值将被HBase垃圾收集Long.MAX\u值-System.currentTimeMillis()
- 将时间戳存储为行键的一部分,并使用带PageFilter的扫描获取第一个值