2017-01-27 12 views
0

Я хочу сделать что-то подобное в Java, как то, что мы делаем в comparefilter в HBaseРеализация compareFilter из HBase в Java

hbase(main):003:0> import org.apache.hadoop.hbase.filter.CompareFilter 
hbase(main):005:0> import org.apache.hadoop.hbase.filter.SubstringComparator 
hbase(main):006:0> scan 'CUTOFF21', {FILTER => org.apache.hadoop.hbase.filter.RowFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'),SubstringComparator.new("C11\x09143662"))} 

ответ

1

Смотрите ниже примеры BinaryComparator, RegexStringComparator, SubstringComparator из here

Scan scan = new Scan(); 
    scan.addColumn(Bytes.toBytes("colfam1"), Bytes.toBytes("col-1")); 

    Filter filter1 = new RowFilter(CompareFilter.CompareOp.LESS_OR_EQUAL, 1 
     new BinaryComparator(Bytes.toBytes("row-22"))); 
    scan.setFilter(filter1); 
    ResultScanner scanner1 = table.getScanner(scan); 
    for (Result res : scanner1) { 
     System.out.println(res); 
    } 
    scanner1.close(); 

    Filter filter2 = new RowFilter(CompareFilter.CompareOp.EQUAL, 2 
     new RegexStringComparator(".*-.5")); 
    scan.setFilter(filter2); 
    ResultScanner scanner2 = table.getScanner(scan); 
    for (Result res : scanner2) { 
     System.out.println(res); 
    } 
    scanner2.close(); 

    Filter filter3 = new RowFilter(CompareFilter.CompareOp.EQUAL, 3 
     new SubstringComparator("-5")); 
    scan.setFilter(filter3); 
    ResultScanner scanner3 = table.getScanner(scan); 
    for (Result res : scanner3) { 
     System.out.println(res); 
    } 
    scanner3.close(); 

Ваш случай это будет примерно так

Filter filter3 = new RowFilter(CompareFilter.CompareOp.EQUAL, 3 
      new SubstringComparator("C11\x09143662")); 
     scan.setFilter(filter3); 
     ResultScanner scanner3 = table.getScanner(scan); 
     for (Result res : scanner3) { 
      System.out.println(res); 
     } 
     scanner3.close(); 
+0

Было ли это полезно? –

+0

Вы пробовали? Было ли это полезно? –

+0

эй человек! вы можете ответить хорошо! не все в порядке. У меня есть некоторые сомнения и т. Д .... –