org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators
Class PORank

java.lang.Object
  extended by org.apache.pig.impl.plan.Operator<PhyPlanVisitor>
      extended by org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator
          extended by org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.PORank
All Implemented Interfaces:
Serializable, Cloneable, Comparable<Operator>, Illustrable

public class PORank
extends PhysicalOperator

This operator is part of the RANK operator implementation. Reads the output tuple from POCounter and the cumulative sum previously calculated. Here is read the task identifier in order to get the corresponding cumulative sum, and the local counter at the tuple. These values are summed and prepended to the tuple.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator
PhysicalOperator.OriginalLocation
 
Field Summary
protected static TupleFactory mTupleFactory
           
 
Fields inherited from class org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator
alias, illustrator, input, inputAttached, inputs, lineageTracer, outputs, parentPlan, pigLogger, requestedParallelism, res, resultType
 
Fields inherited from class org.apache.pig.impl.plan.Operator
mKey
 
Constructor Summary
PORank(OperatorKey k)
           
PORank(OperatorKey k, int rp)
           
PORank(OperatorKey k, int rp, List<PhysicalOperator> inp)
           
PORank(OperatorKey operatorKey, int requestedParallelism, List inp, List<PhysicalPlan> rankPlans, List<Boolean> ascendingCol)
           
PORank(OperatorKey k, List<PhysicalOperator> inp)
           
 
Method Summary
 Result addRank(Result input)
          Reads the output tuple from POCounter and the cumulative sum previously calculated.
 List<Boolean> getAscendingCols()
           
 Result getNextTuple()
           
 String getOperationID()
           
 List<PhysicalPlan> getRankPlans()
           
 Tuple illustratorMarkup(Object in, Object out, int eqClassIndex)
          input tuple mark up to be illustrate-able
 String name()
           
 void setAscendingCols(List<Boolean> mAscCols)
           
 void setOperationID(String operationID)
          Operation ID: identifier shared within the corresponding POCounter
 void setRankPlans(List<PhysicalPlan> rankPlans)
           
 boolean supportsMultipleInputs()
          Indicates whether this operator supports multiple inputs.
 boolean supportsMultipleOutputs()
          Indicates whether this operator supports multiple outputs.
 void visit(PhyPlanVisitor v)
          Visit this node with the provided visitor.
 
Methods inherited from class org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator
addOriginalLocation, addOriginalLocation, attachInput, clone, cloneHelper, detachInput, getAlias, getAliasString, getIllustrator, getInputs, getLogger, getNext, getNextBigDecimal, getNextBigInteger, getNextBoolean, getNextDataBag, getNextDataByteArray, getNextDateTime, getNextDouble, getNextFloat, getNextInteger, getNextLong, getNextMap, getNextString, getOriginalLocations, getPigLogger, getReporter, getRequestedParallelism, getResultType, isAccumStarted, isAccumulative, isBlocking, isInputAttached, processInput, reset, setAccumEnd, setAccumStart, setAccumulative, setIllustrator, setInputs, setParentPlan, setPigLogger, setReporter, setRequestedParallelism, setResultType
 
Methods inherited from class org.apache.pig.impl.plan.Operator
compareTo, equals, getOperatorKey, getProjectionMap, hashCode, regenerateProjectionMap, rewire, toString, unsetProjectionMap
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

mTupleFactory

protected static final TupleFactory mTupleFactory
Constructor Detail

PORank

public PORank(OperatorKey k)

PORank

public PORank(OperatorKey k,
              int rp)

PORank

public PORank(OperatorKey k,
              List<PhysicalOperator> inp)

PORank

public PORank(OperatorKey k,
              int rp,
              List<PhysicalOperator> inp)

PORank

public PORank(OperatorKey operatorKey,
              int requestedParallelism,
              List inp,
              List<PhysicalPlan> rankPlans,
              List<Boolean> ascendingCol)
Method Detail

illustratorMarkup

public Tuple illustratorMarkup(Object in,
                               Object out,
                               int eqClassIndex)
Description copied from interface: Illustrable
input tuple mark up to be illustrate-able

Parameters:
in - input tuple
out - output tuple before wrapped in ExampleTuple
eqClassIndex - index into equivalence classes in illustrator
Returns:
tuple

visit

public void visit(PhyPlanVisitor v)
           throws VisitorException
Description copied from class: Operator
Visit this node with the provided visitor. This should only be called by the visitor class itself, never directly.

Specified by:
visit in class PhysicalOperator
Parameters:
v - Visitor to visit with.
Throws:
VisitorException - if the visitor has a problem.

getNextTuple

public Result getNextTuple()
                    throws ExecException
Overrides:
getNextTuple in class PhysicalOperator
Throws:
ExecException

addRank

public Result addRank(Result input)
               throws ExecException
Reads the output tuple from POCounter and the cumulative sum previously calculated. Here is read the task identifier in order to get the corresponding cumulative sum, and the local counter at the tuple. These values are summed and prepended to the tuple.

Parameters:
input - processed by POCounter
Returns:
input as Result. The input.result tuple owns the prepend rank value
Throws:
ExecException

supportsMultipleInputs

public boolean supportsMultipleInputs()
Description copied from class: Operator
Indicates whether this operator supports multiple inputs.

Specified by:
supportsMultipleInputs in class Operator<PhyPlanVisitor>
Returns:
true if it does, otherwise false.

supportsMultipleOutputs

public boolean supportsMultipleOutputs()
Description copied from class: Operator
Indicates whether this operator supports multiple outputs.

Specified by:
supportsMultipleOutputs in class Operator<PhyPlanVisitor>
Returns:
true if it does, otherwise false.

name

public String name()
Specified by:
name in class Operator<PhyPlanVisitor>

setRankPlans

public void setRankPlans(List<PhysicalPlan> rankPlans)

getRankPlans

public List<PhysicalPlan> getRankPlans()

setAscendingCols

public void setAscendingCols(List<Boolean> mAscCols)

getAscendingCols

public List<Boolean> getAscendingCols()

setOperationID

public void setOperationID(String operationID)
Operation ID: identifier shared within the corresponding POCounter

Parameters:
operationID -

getOperationID

public String getOperationID()


Copyright © 2007-2012 The Apache Software Foundation