Java 如何获取Hbase中给定部分行键的所有行
我在Hbase中有以下表格结构:Java 如何获取Hbase中给定部分行键的所有行,java,database,eclipse,hbase,Java,Database,Eclipse,Hbase,我在Hbase中有以下表格结构: Row column+cell Mary_Ann_05/10/2013 column=cf:verified, timestamp=234454454,value=2,2013-02-12 Mary_Ann_06/10/2013 column=cf:verified, timestamp=2345454454,value=3,2013-02-12 Mary_Ann_07/10/2013 column=cf:verified,
Row column+cell
Mary_Ann_05/10/2013 column=cf:verified, timestamp=234454454,value=2,2013-02-12
Mary_Ann_06/10/2013 column=cf:verified, timestamp=2345454454,value=3,2013-02-12
Mary_Ann_07/10/2013 column=cf:verified, timestamp=2345454522454,value=4,2013-02-12
Mary_Ann_08/10/2013 column=cf:verified, timestamp=23433333454,value=1,2013-12-12
我想使用java检索以
Mary_Ann
开头的所有记录。我如何做到这一点?您可以使用PrefixFilter
实现这一点。给定一个在实例化筛选器实例时指定的前缀,与此前缀匹配的所有行都将返回给客户端。构造函数是:public PrefixFilter(字节[]前缀)
用法:
Filter filter = new PrefixFilter(Bytes.toBytes("Mary_Ann"));
Scan scan = new Scan();
scan.setFilter(filter);
ResultScanner scanner = table.getScanner(scan);
for (Result result : scanner) {
for (KeyValue kv : result.raw()) {
System.out.println("KV: " + kv + ", Value: " +
Bytes.toString(kv.getValue()));
}
}
scanner.close();
HTH您可以使用
PrefixFilter
实现这一点。给定一个在实例化筛选器实例时指定的前缀,与此前缀匹配的所有行都将返回给客户端。构造函数是:public PrefixFilter(字节[]前缀)
用法:
Filter filter = new PrefixFilter(Bytes.toBytes("Mary_Ann"));
Scan scan = new Scan();
scan.setFilter(filter);
ResultScanner scanner = table.getScanner(scan);
for (Result result : scanner) {
for (KeyValue kv : result.raw()) {
System.out.println("KV: " + kv + ", Value: " +
Bytes.toString(kv.getValue()));
}
}
scanner.close();
嗯