[ 
https://issues.apache.org/jira/browse/HIVE-4579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13663437#comment-13663437
 ] 

Owen O'Malley commented on HIVE-4579:
-------------------------------------

Another alternative is to put the expression into disjunctive normal form:

{code}
SARG: ALTERNATIVE | ALTERNATIVE or SARG
ALTERNATIVE: COND | COND and ALTERNATIVE
{code}

that forces the or conditions to be top level operators. Of course the most 
effective filters will have a very small number of alternatives since the 
effectiveness decreases rapidly as the number of alternatives increases.

                
> Create a SARG interface for RecordReaders
> -----------------------------------------
>
>                 Key: HIVE-4579
>                 URL: https://issues.apache.org/jira/browse/HIVE-4579
>             Project: Hive
>          Issue Type: Improvement
>            Reporter: Owen O'Malley
>            Assignee: Owen O'Malley
>
> I think we should create a SARG (http://en.wikipedia.org/wiki/Sargable) 
> interface for RecordReaders. For a first pass, I'll create an API that uses 
> the value stored in hive.io.filter.expr.serialized.
> The desire is to define an simpler interface that the direct AST expression 
> that is provided by hive.io.filter.expr.serialized so that the code to 
> evaluate expressions can be generalized instead of put inside a particular 
> RecordReader.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to