扫描api中的HBASE记录限制

扫描api中的HBASE记录限制,hbase,limit,database-scan,Hbase,Limit,Database Scan,在使用开始行和停止行之后,是否有java api限制扫描记录的数量? pagefilter是一个选项吗?是否尝试使用 PageFilter可能不会给出预期的结果,文档说: 此筛选器无法保证返回到 客户可能会帮助您。setCaching()用于定义HBase在一次RPC调用中应返回多少个结果 使用scan.setLimit(int)方法 设置此扫描的行数限制。如果返回的行数达到此值,我们将终止扫描。 在停止行、过滤器等所有其他条件之后,最终将测试该条件 如果您只想获得一行,则此答案适用 如果您使

在使用开始行和停止行之后,是否有java api限制扫描记录的数量? pagefilter是一个选项吗?

是否尝试使用

PageFilter可能不会给出预期的结果,文档说:

此筛选器无法保证返回到 客户可能会帮助您。setCaching()用于定义HBase在一次RPC调用中应返回多少个结果

使用scan.setLimit(int)方法

设置此扫描的行数限制。如果返回的行数达到此值,我们将终止扫描。 在停止行、过滤器等所有其他条件之后,最终将测试该条件

如果您只想获得一行,则此答案适用

如果您使用的是旧版本的HBase,而该版本不可用,则可以使用以下命令将其赋予与相同的值,并添加一个设置为零的尾随字节以使其包含在内:

注意:为了使stopRow包含在内,请添加一个尾随的0字节

以下是一个例子:

    byte[] startRow = new byte[] { (byte)0xab, (byte)0xac};
    byte[] stopRow = new byte[startRow.length + 1];
    Array.copy(startRow, 0, stopRow, 0, startRow.length);
    stopRow[stopRow.length - 1] = 0; // inclusive
    Scan scan = new Scan().setStartRow(startRow).setStopRow(stopRow);