Hi All,

I have below code where I have row key like 9865327845_#RandomChar
I want to perform prefix scan I tryed with ResultScanner  which has
performance impact
I have seen in some articles people saying about Get and setFilter but its
not working
can anyone suggest me better way, below is my code

public static HashSet  getResultByPreFixFilterScan(String rowkeys){
Scan scan = new Scan();
PrefixFilter prefixFilter = new PrefixFilter(rowkeys.getBytes());
scan.setFilter(prefixFilter);
ResultScanner resultScanner = null;
try {
resultScanner = hTable.getScanner(scan);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

HashSet<String> rowKeySet=new HashSet<String>();
//Result result = table.get(g);
for (Result results : resultScanner) {
for(KeyValue kv : results.raw()){
rowKeySet.add(new String(kv.getRow()));

}
}
return rowKeySet;
}





can we perform prefix by
Filter filter = new QualifierFilter(CompareFilter.CompareOp.EQUAL,  new
BinaryComparator(Bytes.toBytes(rowkeys)));

Thanks
Manjeet

-- 
luv all

Reply via email to