Hey,

i'm building a Map Reduce Job which should get Data from a HBase Table
filter it an store the reduced data in another HBase Table. I used the
SingleColumnValueFilter to limit the Data that will be commit to the
Map-Process. The Problem is, the Filter doesn't reduce the Data but
commit all Data in the Table to the Map Process:

The code looks like this for the Filter:

Scan scan = new Scan();
String columns = "details";
String qualifier = "details:page";
String value = "5";
scan.setFilter(new SingleColumnValueFilter(Bytes.toBytes(columns),
Bytes.toBytes(qualifier), CompareOp.EQUAL, Bytes.toBytes("5")));
TableMapReduceUtil.initTableMapperJob("books", scan, mapper.class,
ImmutableBytesWritable.class, IntWritable.class, job);


And this was my Code for filling the Table:

Put put = new Put(rowkey);
put.add(Bytes.toBytes("details"), Bytes.toBytes("page"),
Bytes.toBytes(rand.nextInt(20)));

and I didn't understand why the filter doesn't work! I hope anybody can
help me.

Best regards,
Patrick



Reply via email to