/**
* Read from Geode, using MonarchRecordReader, all the records from the provided split.
* The split contains the range of records to be read by the record reader. It
* returns the total number of records read by this method.
*
* @param conf the reader configuration -- must have the region name
* @param split the input-split containing the records to be read
* @param predicates the predicates to filter out unwanted results
* @return the total number of records read
*/
private long readUsingRecordReader(final Configuration conf, final InputSplit split,
final Filter... predicates) {
MonarchRecordReader mrr = new MonarchRecordReader(conf);
FilterList filterList = new FilterList(FilterList.Operator.MUST_PASS_ALL);
for (int i=0; i<predicates.length; i++) {
filterList.addFilter(predicates[i]);
}
mrr.pushDownfilters = filterList;
long size = 0;
try {
mrr.initialize(split, conf);
Writable key = mrr.createKey();
Writable value = mrr.createValue();
while (mrr.next(key, value)) {
++size;
}
mrr.close();
} catch (IOException e) {
e.printStackTrace();
}
return size;
}
MonarchRecordReaderFTableTest.java 文件源码
java
阅读 29
收藏 0
点赞 0
评论 0
项目:monarch
作者:
评论列表
文章目录