[ 
https://issues.apache.org/jira/browse/HADOOP-449?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12566362#action_12566362
 ] 

chris.douglas edited comment on HADOOP-449 at 2/6/08 1:46 PM:
--------------------------------------------------------------

* It looks like one can't meaningfully nest FilterInputFormats. A check in 
initBaseInputFormat that rejects an attempt to do this would probably be a good 
idea.
* IIRC, Configuration::IntegerRanges is limited to positive integers, so the 
default range of (Integer.MIN_VALUE + "-" + Integer.MAX_VALUE) in 
IntRangeFilter::setConf may be invalid.
* RangeFilter should probably accept a WritableComparator to support user types 
and an alternative syntax for projections
* Would it be too constraining to limit SetFilter and ItemFilter to Text? 
Filtering based on the string representation of Writables seems like an overly 
general strategy.


The patch looks good; this should be very useful.

      was (Author: chris.douglas):
    * It looks like one can't meaningfully nest FilterInputFormats. A check in 
initBaseInputFormat that rejects an attempt to do this would probably be a good 
idea.
* IIRC, Configuration::IntegerRanges is limited to positive integers, so the 
default range of (Integer.MIN_VALUE + "-" + Integer.MAX_VALUE) in 
IntRangeFilter::setConf may be invalid.
* RangeFilter should probably accept a WritableComparator to support user types 
and an alternative syntax for projections
* Would it be too constraining to limit SetFilter and ItemFilter to Text? 
Filtering based on the string representation of Writables seems like an overly 
general strategy.
The patch looks good; this should be very useful.
  
> Generalize the SequenceFileInputFilter to apply to any InputFormat
> ------------------------------------------------------------------
>
>                 Key: HADOOP-449
>                 URL: https://issues.apache.org/jira/browse/HADOOP-449
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: mapred
>    Affects Versions: 0.17.0
>            Reporter: Owen O'Malley
>            Assignee: Enis Soztutar
>             Fix For: 0.17.0
>
>         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.

Reply via email to