org.apache.hadoop.hive.ql.ppd
Class ExprWalkerProcFactory

java.lang.Object
  extended by org.apache.hadoop.hive.ql.ppd.ExprWalkerProcFactory

public final class ExprWalkerProcFactory
extends Object

Expression factory for predicate pushdown processing. Each processor determines whether the expression is a possible candidate for predicate pushdown optimization for the given operator


Nested Class Summary
static class ExprWalkerProcFactory.ColumnExprProcessor
          ColumnExprProcessor.
static class ExprWalkerProcFactory.DefaultExprProcessor
          For constants and null expressions.
static class ExprWalkerProcFactory.FieldExprProcessor
          FieldExprProcessor.
static class ExprWalkerProcFactory.GenericFuncExprProcessor
          If all children are candidates and refer only to one table alias then this expr is a candidate else it is not a candidate but its children could be final candidates.
 
Method Summary
static ExprWalkerInfo extractPushdownPreds(OpWalkerInfo opContext, Operator<? extends OperatorDesc> op, ExprNodeDesc pred)
           
static ExprWalkerInfo extractPushdownPreds(OpWalkerInfo opContext, Operator<? extends OperatorDesc> op, List<ExprNodeDesc> preds)
          Extracts pushdown predicates from the given list of predicate expression.
static NodeProcessor getColumnProcessor()
           
static NodeProcessor getDefaultExprProcessor()
           
static NodeProcessor getGenericFuncProcessor()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getDefaultExprProcessor

public static NodeProcessor getDefaultExprProcessor()

getGenericFuncProcessor

public static NodeProcessor getGenericFuncProcessor()

getColumnProcessor

public static NodeProcessor getColumnProcessor()

extractPushdownPreds

public static ExprWalkerInfo extractPushdownPreds(OpWalkerInfo opContext,
                                                  Operator<? extends OperatorDesc> op,
                                                  ExprNodeDesc pred)
                                           throws SemanticException
Throws:
SemanticException

extractPushdownPreds

public static ExprWalkerInfo extractPushdownPreds(OpWalkerInfo opContext,
                                                  Operator<? extends OperatorDesc> op,
                                                  List<ExprNodeDesc> preds)
                                           throws SemanticException
Extracts pushdown predicates from the given list of predicate expression.

Parameters:
opContext - operator context used for resolving column references
op - operator of the predicates being processed
preds -
Returns:
The expression walker information
Throws:
SemanticException


Copyright © 2014 The Apache Software Foundation. All rights reserved.