[
https://issues.apache.org/jira/browse/HADOOP-449?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Enis Soztutar updated HADOOP-449:
---------------------------------
Attachment: filterinputformat_v1.patch
Here is the patch to generalize the filtering capability on input records.
The patch
- deprecates SequenceFileInputFilter
- introduces o.a.h.io.filter package
- refactors SequenceFileInputFilter.Filter to o.a.h.io.filter.WritableFilter,
SequenceFileInputFilter.RegexFilter to o.a.h.io.filter.RegexFilter, ..
- Introduces new filters DefaultFilter, ItemFilter, SetFilter, and RangeFilter.
- Introduces FilterRecordReader which uses the provided filter on the records
returned by the underlying RecordReader.
- Introduces FilterInputFormat which is a decorator to add filtering
capability. It can work with the legacy code with no change.
> Generalize the SequenceFileInputFilter to apply to any InputFormat
> ------------------------------------------------------------------
>
> Key: HADOOP-449
> URL: https://issues.apache.org/jira/browse/HADOOP-449
> Project: Hadoop
> Issue Type: Improvement
> Components: mapred
> Affects Versions: 0.5.0
> Reporter: Owen O'Malley
> Assignee: Enis Soztutar
> Attachments: filterinputformat_v1.patch
>
>
> I'd like to generalize the SequenceFileInputFormat that was introduced in
> HADOOP-412 so that it can be applied to any InputFormat. To do this, I
> propose:
> interface WritableFilter {
> boolean accept(Writable item);
> }
> class FilterInputFormat implements InputFormat {
> ...
> }
> FilterInputFormat would look in the JobConf for:
> mapred.input.filter.source = the underlying input format
> mapred.input.filter.filters = a list of class names that implement
> WritableFilter
> The FilterInputFormat will work like the current SequenceFilter, but use an
> internal RecordReader rather than the SequenceFile. This will require adding
> a next(key) and getCurrentValue(value) to the RecordReader interface, but
> that will be addressed in a different issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.