Class ExecEdge
- java.lang.Object
-
- org.apache.flink.table.planner.plan.nodes.exec.ExecEdge
-
public class ExecEdge extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ExecEdge.Builder
Builder of theExecEdge
.static class
ExecEdge.HashShuffle
Records are shuffled by hash when passing through this edge.static class
ExecEdge.Shuffle
TheExecEdge.Shuffle
defines how to exchange the records betweenExecNode
s.
-
Field Summary
Fields Modifier and Type Field Description static ExecEdge.Shuffle
ANY_SHUFFLE
Any type of shuffle is OK when passing through this edge.static ExecEdge.Shuffle
BROADCAST_SHUFFLE
Full records are provided for each parallelism of the target node.static ExecEdge.Shuffle
FORWARD_SHUFFLE
Records are shuffled in same parallelism (function call).static ExecEdge.Shuffle
SINGLETON_SHUFFLE
The parallelism of the target node must be 1.
-
Constructor Summary
Constructors Constructor Description ExecEdge(ExecNode<?> source, ExecNode<?> target, ExecEdge.Shuffle shuffle, StreamExchangeMode exchangeMode)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ExecEdge.Builder
builder()
StreamExchangeMode
getExchangeMode()
LogicalType
getOutputType()
Returns the outputLogicalType
of the data passing this edge.ExecEdge.Shuffle
getShuffle()
ExecNode<?>
getSource()
ExecNode<?>
getTarget()
static ExecEdge.Shuffle
hashShuffle(int[] keys)
Return hashExecEdge.Shuffle
.String
toString()
OpFusionCodegenSpecGenerator
translateToFusionCodegenSpec(Planner planner, org.apache.flink.table.planner.codegen.CodeGeneratorContext parentCtx)
Translates this edge into operator fusion codegen spec generator.Transformation<?>
translateToPlan(Planner planner)
Translates this edge into a Flink operator.
-
-
-
Field Detail
-
ANY_SHUFFLE
public static final ExecEdge.Shuffle ANY_SHUFFLE
Any type of shuffle is OK when passing through this edge.
-
BROADCAST_SHUFFLE
public static final ExecEdge.Shuffle BROADCAST_SHUFFLE
Full records are provided for each parallelism of the target node.
-
SINGLETON_SHUFFLE
public static final ExecEdge.Shuffle SINGLETON_SHUFFLE
The parallelism of the target node must be 1.
-
FORWARD_SHUFFLE
public static final ExecEdge.Shuffle FORWARD_SHUFFLE
Records are shuffled in same parallelism (function call).
-
-
Constructor Detail
-
ExecEdge
public ExecEdge(ExecNode<?> source, ExecNode<?> target, ExecEdge.Shuffle shuffle, StreamExchangeMode exchangeMode)
-
-
Method Detail
-
getSource
public ExecNode<?> getSource()
-
getTarget
public ExecNode<?> getTarget()
-
getShuffle
public ExecEdge.Shuffle getShuffle()
-
getExchangeMode
public StreamExchangeMode getExchangeMode()
-
getOutputType
public LogicalType getOutputType()
Returns the outputLogicalType
of the data passing this edge.
-
builder
public static ExecEdge.Builder builder()
-
hashShuffle
public static ExecEdge.Shuffle hashShuffle(int[] keys)
Return hashExecEdge.Shuffle
.- Parameters:
keys
- hash keys
-
translateToPlan
public Transformation<?> translateToPlan(Planner planner)
Translates this edge into a Flink operator.- Parameters:
planner
- ThePlanner
of the translated Table.
-
translateToFusionCodegenSpec
public OpFusionCodegenSpecGenerator translateToFusionCodegenSpec(Planner planner, org.apache.flink.table.planner.codegen.CodeGeneratorContext parentCtx)
Translates this edge into operator fusion codegen spec generator.- Parameters:
planner
- ThePlanner
of the translated Table.parentCtx
- Parent CodeGeneratorContext.
-
-