Class HashJoinPrel
java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.BiRel
org.apache.calcite.rel.core.Join
org.apache.drill.exec.planner.common.DrillJoinRelBase
org.apache.drill.exec.planner.physical.JoinPrel
org.apache.drill.exec.planner.physical.HashJoinPrel
- All Implemented Interfaces:
Cloneable
,Iterable<Prel>
,org.apache.calcite.plan.RelOptNode
,org.apache.calcite.rel.hint.Hintable
,org.apache.calcite.rel.RelNode
,DrillRelNode
,DrillJoin
,Prel
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
org.apache.calcite.rel.RelNode.Context
-
Field Summary
Fields inherited from class org.apache.drill.exec.planner.physical.JoinPrel
isSemiJoin, joincategory
Fields inherited from class org.apache.drill.exec.planner.common.DrillJoinRelBase
filterNulls, leftKeys, rightKeys
Fields inherited from class org.apache.calcite.rel.core.Join
condition, hints, joinInfo, joinType, variablesSet
Fields inherited from class org.apache.calcite.rel.BiRel
left, right
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
Fields inherited from interface org.apache.drill.exec.planner.physical.Prel
DRILL_PHYSICAL
-
Constructor Summary
ConstructorDescriptionHashJoinPrel
(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoin) HashJoinPrel
(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, boolean swapped, RuntimeFilterDef runtimeFilterDef, boolean isRowKeyJoin, int joinControl) HashJoinPrel
(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, boolean swapped, RuntimeFilterDef runtimeFilterDef, boolean isRowKeyJoin, int joinControl, boolean semiJoin) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.calcite.plan.RelOptCost
computeSelfCost
(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq) org.apache.calcite.rel.core.Join
copy
(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode conditionExpr, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone) org.apache.calcite.rel.RelWriter
explainTerms
(org.apache.calcite.rel.RelWriter pw) A Prel's own SelectionVector mode - i.e whether it generates an SV2, SV4 or NonegetPhysicalOperator
(PhysicalPlanCreator creator) Supported 'encodings' of a Prel indicates what are the acceptable modes of SelectionVector of its child Prelboolean
boolean
void
setRuntimeFilterDef
(RuntimeFilterDef runtimeFilterDef) void
setSwapped
(boolean swapped) Methods inherited from class org.apache.drill.exec.planner.physical.JoinPrel
accept, buildJoinConditions, deriveRowType, getJoinInput, isSemiJoin, isValid, iterator, needsFinalColumnReordering
Methods inherited from class org.apache.drill.exec.planner.common.DrillJoinRelBase
computeCartesianJoinCost, computeHashJoinCost, computeHashJoinCostWithRowCntKeySize, computeLogicalJoinCost, estimateRowCount, getLeftKeys, getRightKeys, isUnique, uniqueFieldNames
Methods inherited from class org.apache.calcite.rel.core.Join
accept, analyzeCondition, copy, createJoinType, deepEquals0, deepHashCode0, deriveJoinRowType, estimateJoinedRows, getCondition, getHints, getJoinType, getSystemFieldList, getVariablesSet, isSemiJoinDone
Methods inherited from class org.apache.calcite.rel.BiRel
childrenAccept, getInputs, getLeft, getRight, replaceInput
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, hashCode, isEnforcer, metadata, onRegister, recomputeDigest, register, sole, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.drill.exec.planner.logical.DrillJoin
getCondition, getJoinType, getLeft, getRight
Methods inherited from interface org.apache.calcite.rel.hint.Hintable
attachHints, withHints
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface org.apache.drill.exec.planner.physical.Prel
prepareForLateralUnnestPipeline
Methods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, metadata, onRegister, recomputeDigest, register, replaceInput
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getId, getTraitSet
-
Field Details
-
isRowKeyJoin
protected boolean isRowKeyJoin
-
-
Constructor Details
-
HashJoinPrel
public HashJoinPrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoin) throws org.apache.calcite.rel.InvalidRelException - Throws:
org.apache.calcite.rel.InvalidRelException
-
HashJoinPrel
public HashJoinPrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, boolean swapped, RuntimeFilterDef runtimeFilterDef, boolean isRowKeyJoin, int joinControl) throws org.apache.calcite.rel.InvalidRelException - Throws:
org.apache.calcite.rel.InvalidRelException
-
HashJoinPrel
public HashJoinPrel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, boolean swapped, RuntimeFilterDef runtimeFilterDef, boolean isRowKeyJoin, int joinControl, boolean semiJoin) throws org.apache.calcite.rel.InvalidRelException - Throws:
org.apache.calcite.rel.InvalidRelException
-
-
Method Details
-
copy
public org.apache.calcite.rel.core.Join copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode conditionExpr, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone) - Specified by:
copy
in classorg.apache.calcite.rel.core.Join
-
computeSelfCost
public org.apache.calcite.plan.RelOptCost computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq) - Specified by:
computeSelfCost
in interfaceorg.apache.calcite.rel.RelNode
- Overrides:
computeSelfCost
in classDrillJoinRelBase
-
getPhysicalOperator
- Throws:
IOException
-
getSupportedEncodings
Description copied from interface:Prel
Supported 'encodings' of a Prel indicates what are the acceptable modes of SelectionVector of its child Prel -
getEncoding
Description copied from interface:Prel
A Prel's own SelectionVector mode - i.e whether it generates an SV2, SV4 or None -
setSwapped
public void setSwapped(boolean swapped) -
isSwapped
public boolean isSwapped() -
getRuntimeFilterDef
-
setRuntimeFilterDef
-
isRowKeyJoin
public boolean isRowKeyJoin() -
explainTerms
public org.apache.calcite.rel.RelWriter explainTerms(org.apache.calcite.rel.RelWriter pw) - Overrides:
explainTerms
in classorg.apache.calcite.rel.core.Join
-