org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators
Class POFRJoin
java.lang.Object
org.apache.pig.impl.plan.Operator<PhyPlanVisitor>
org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator
org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.POFRJoin
- All Implemented Interfaces:
- Serializable, Cloneable, Comparable<Operator>
public class POFRJoin
- extends PhysicalOperator
The operator models the join keys using the Local Rearrange operators which
are configured with the plan specified by the user. It also sets up
one Hashtable per replicated input which maps the Key(k) stored as a Tuple
to a DataBag which holds all the values in the input having the same key(k)
The getNext() reads an input from its predecessor and separates them into
key & value. It configures a foreach operator with the databags obtained from
each Hashtable for the key and also with the value for the fragment input.
It then returns tuples returned by this foreach operator.
- See Also:
- Serialized Form
Fields inherited from class org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator |
dummyBag, dummyBool, dummyDBA, dummyDouble, dummyFloat, dummyInt, dummyLong, dummyMap, dummyString, dummyTuple, input, inputAttached, inputs, lineageTracer, outputs, parentPlan, pigLogger, reporter, requestedParallelism, res, resultType |
Fields inherited from class org.apache.pig.impl.plan.Operator |
mKey |
Constructor Summary |
POFRJoin(OperatorKey k)
|
POFRJoin(OperatorKey k,
int rp)
|
POFRJoin(OperatorKey k,
int rp,
List<PhysicalOperator> inp)
|
POFRJoin(OperatorKey k,
int rp,
List<PhysicalOperator> inp,
List<List<PhysicalPlan>> ppLists,
List<List<Byte>> keyTypes,
FileSpec[] replFiles,
int fragment)
|
POFRJoin(OperatorKey k,
List<PhysicalOperator> inp)
|
Methods inherited from class org.apache.pig.backend.hadoop.executionengine.physicalLayer.PhysicalOperator |
attachInput, clone, cloneHelper, detachInput, getInputs, getLogger, getNext, getNext, getNext, getNext, getNext, getNext, getNext, getNext, getNext, getPigLogger, getRequestedParallelism, getResultType, isBlocking, isInputAttached, processInput, reset, setInputs, setLineageTracer, setParentPlan, setPigLogger, setReporter, setRequestedParallelism, setResultType |
POFRJoin
public POFRJoin(OperatorKey k)
throws PlanException,
ExecException
- Throws:
PlanException
ExecException
POFRJoin
public POFRJoin(OperatorKey k,
int rp)
throws PlanException,
ExecException
- Throws:
PlanException
ExecException
POFRJoin
public POFRJoin(OperatorKey k,
List<PhysicalOperator> inp)
throws PlanException,
ExecException
- Throws:
PlanException
ExecException
POFRJoin
public POFRJoin(OperatorKey k,
int rp,
List<PhysicalOperator> inp)
throws PlanException,
ExecException
- Throws:
PlanException
ExecException
POFRJoin
public POFRJoin(OperatorKey k,
int rp,
List<PhysicalOperator> inp,
List<List<PhysicalPlan>> ppLists,
List<List<Byte>> keyTypes,
FileSpec[] replFiles,
int fragment)
throws ExecException
- Throws:
ExecException
getJoinPlans
public List<List<PhysicalPlan>> getJoinPlans()
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.
name
public String name()
- Specified by:
name
in class Operator<PhyPlanVisitor>
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.
getNext
public Result getNext(Tuple t)
throws ExecException
- Overrides:
getNext
in class PhysicalOperator
- Throws:
ExecException
getFragment
public int getFragment()
setFragment
public void setFragment(int fragment)
getReplFiles
public FileSpec[] getReplFiles()
setReplFiles
public void setReplFiles(FileSpec[] replFiles)
Copyright © ${year} The Apache Software Foundation