org.apache.hadoop.hive.ql.exec
Class SelectOperator

java.lang.Object
  extended by org.apache.hadoop.hive.ql.exec.Operator<SelectDesc>
      extended by org.apache.hadoop.hive.ql.exec.SelectOperator
All Implemented Interfaces:
Serializable, Cloneable, Node
Direct Known Subclasses:
VectorSelectOperator

public class SelectOperator
extends Operator<SelectDesc>
implements Serializable

Select operator implementation.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.hadoop.hive.ql.exec.Operator
Operator.OperatorFunc, Operator.State
 
Field Summary
 
Fields inherited from class org.apache.hadoop.hive.ql.exec.Operator
HIVECOUNTERCREATEDFILES, HIVECOUNTERFATAL
 
Constructor Summary
SelectOperator()
           
 
Method Summary
 boolean acceptLimitPushdown()
          used for LimitPushdownOptimizer if all of the operators between limit and reduce-sink does not remove any input rows in the range of limit count, limit can be pushed down to reduce-sink operator.
 boolean columnNamesRowResolvedCanBeObtained()
           
 String getName()
          Implements the getName function for the Node Interface.
static String getOperatorName()
           
 org.apache.hadoop.hive.ql.plan.api.OperatorType getType()
          Return the type of the specific operator among the types in OperatorType.
 void processOp(Object row, int tag)
          Process the row.
 boolean supportAutomaticSortMergeJoin()
          Whether this operator supports automatic sort merge join.
 boolean supportSkewJoinOptimization()
           
 boolean supportUnionRemoveOptimization()
           
 
Methods inherited from class org.apache.hadoop.hive.ql.exec.Operator
augmentPlan, cleanUpInputFileChanged, cleanUpInputFileChangedOp, clone, cloneOp, cloneRecursiveChildren, close, dump, dump, endGroup, flush, getChildOperators, getChildren, getColumnExprMap, getConf, getConfiguration, getDone, getExecContext, getGroupKeyObject, getGroupKeyObjectInspector, getIdentifier, getInputObjInspectors, getNumChild, getNumParent, getOperatorId, getOpTraits, getOutputObjInspector, getParentOperators, getSchema, getStatistics, getStats, initialize, initializeLocalWork, initOperatorId, isUseBucketizedHiveInputFormat, jobClose, jobCloseOp, logStats, opAllowedAfterMapJoin, opAllowedBeforeMapJoin, opAllowedBeforeSortMergeJoin, opAllowedConvertMapJoin, passExecContext, preorderMap, processGroup, removeChild, removeChildAndAdoptItsChildren, removeChildren, removeParent, replaceChild, replaceParent, reset, resetId, resetStats, setAlias, setChildOperators, setColumnExprMap, setConf, setExecContext, setGroupKeyObject, setGroupKeyObjectInspector, setId, setInputObjInspectors, setOperatorId, setOpTraits, setOutputCollector, setParentOperators, setReporter, setSchema, setStatistics, setUseBucketizedHiveInputFormat, startGroup, toString, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SelectOperator

public SelectOperator()
Method Detail

processOp

public void processOp(Object row,
                      int tag)
               throws HiveException
Description copied from class: Operator
Process the row.

Specified by:
processOp in class Operator<SelectDesc>
Parameters:
row - The object representing the row.
tag - The tag of the row usually means which parent this row comes from. Rows with the same tag should have exactly the same rowInspector all the time.
Throws:
HiveException

getName

public String getName()
Description copied from class: Operator
Implements the getName function for the Node Interface.

Specified by:
getName in interface Node
Overrides:
getName in class Operator<SelectDesc>
Returns:
the name of the operator

getOperatorName

public static String getOperatorName()

getType

public org.apache.hadoop.hive.ql.plan.api.OperatorType getType()
Description copied from class: Operator
Return the type of the specific operator among the types in OperatorType.

Specified by:
getType in class Operator<SelectDesc>
Returns:
OperatorType.*

supportSkewJoinOptimization

public boolean supportSkewJoinOptimization()
Overrides:
supportSkewJoinOptimization in class Operator<SelectDesc>

columnNamesRowResolvedCanBeObtained

public boolean columnNamesRowResolvedCanBeObtained()
Overrides:
columnNamesRowResolvedCanBeObtained in class Operator<SelectDesc>

supportAutomaticSortMergeJoin

public boolean supportAutomaticSortMergeJoin()
Description copied from class: Operator
Whether this operator supports automatic sort merge join. The stack is traversed, and this method is invoked for all the operators.

Overrides:
supportAutomaticSortMergeJoin in class Operator<SelectDesc>
Returns:
TRUE if yes, FALSE otherwise.

supportUnionRemoveOptimization

public boolean supportUnionRemoveOptimization()
Overrides:
supportUnionRemoveOptimization in class Operator<SelectDesc>

acceptLimitPushdown

public boolean acceptLimitPushdown()
Description copied from class: Operator
used for LimitPushdownOptimizer if all of the operators between limit and reduce-sink does not remove any input rows in the range of limit count, limit can be pushed down to reduce-sink operator. forward, select, etc.

Overrides:
acceptLimitPushdown in class Operator<SelectDesc>


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