0

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, timestamp=2345454522454,value=4,2013-02-12 
Mary_Ann_08/10/2013 column=cf:verified, timestamp=23433333454,value=1,2013-12-12 

Mary_AnnJavaを使用して始まるすべてのレコードを取得したいと考えています。それ、どうやったら出来るの?

4

1 に答える 1

3

を使用してそれを達成できPrefixFilterます。フィルタ インスタンスをインスタンス化するときに指定されたプレフィックスを指定すると、このプレフィックスに一致するすべての行がクライアントに返されます。コンストラクターは次のとおりです。public PrefixFilter(byte[] prefix)

使用法 :

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

于 2013-05-10T10:37:50.347 に答える