如何进行 hbase 范围扫描?

Jas*_*son 2 hbase

我有一个带有 rowkey 的 hbase 表,如 row1, row2, row3 .... 和 rowN ,我想要的是从 row100 到 row200 获取带有 rowkey 的行,如何编写查询子句或设计 hbase 表来进行查询快点?

Mar*_*ace 5

这将适用于 ASCII 行键。请注意,ENDROW 是独占的。

以下应该是一个好的开始:

 scan 'mytable', {STARTROW => 'row100', ENDROW => 'row201'}
Run Code Online (Sandbox Code Playgroud)

在 Java 中(参见apidocs):

Scan scan = new Scan(Bytes.ToBytes("row100"),Bytes.toBytes("row201"); 
scan.setFilter(colFilter);
scan.setOtherStuff...

ResultScanner scanner = table.getScanner(scan);
for (Result result = scanner.next(); result != null; result = scanner.next()) {
    ....
}
Run Code Online (Sandbox Code Playgroud)

表设计可能应该是一个单独的问题,您应该添加更多关于您的数据、访问模式和其他需求的信息。