Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Indexing 如何使用java获取HBase中的第n行?_Indexing_Row_Hbase - Fatal编程技术网

Indexing 如何使用java获取HBase中的第n行?

Indexing 如何使用java获取HBase中的第n行?,indexing,row,hbase,Indexing,Row,Hbase,我有一张大桌子,我想坐第n排。 我已经看到在行键的开头放一个整数索引是个坏主意,因为hbase数据管理系统 因此,不是: org.apache.hadoop.hbase.client.Get getRow=new org.apache.hadoop.hbase.client.Get(rowKey); 我想做一些类似的事情: Get getRowByIndex=Get(int IndexOfWantedRow); 有没有现成的方法? 谢谢大家! 根据您的问题,以下是不同的可能解决方案 1。整数

我有一张大桌子,我想坐第n排。 我已经看到在行键的开头放一个整数索引是个坏主意,因为hbase数据管理系统

因此,不是:

org.apache.hadoop.hbase.client.Get getRow=new org.apache.hadoop.hbase.client.Get(rowKey);
我想做一些类似的事情:

Get getRowByIndex=Get(int IndexOfWantedRow);
有没有现成的方法?
谢谢大家!

根据您的问题,以下是不同的可能解决方案

1。整数是行键

查看您的访问模式,您希望基于行数访问数据。在这种情况下,为什么不将rowNumber作为rowKey?您可以直接使用GETAPI获取第n行

2。将整数前缀添加到行键

您可以在rowKey前面加上rowNumber,然后通过Scan api访问数据以获取数据。 例如:生成rowKey-N_customRowKey 扫描命令-扫描(“N”)

要处理由于序列号引起的热点问题,可以在两个选项中使用哈希(N)而不是N。
但是在这种情况下,将扫描api用于实际的rowKey将非常困难。

您的用例是什么?