Package | Description |
---|---|
org.apache.flink.optimizer.dag | |
org.apache.flink.optimizer.dataproperties | |
org.apache.flink.optimizer.plan | |
org.apache.flink.optimizer.plandump | |
org.apache.flink.optimizer.traversals |
This package contains the various traversals over the program plan and the optimizer DAG
(directed acyclic graph) that are made in the course of the optimization.
|
Modifier and Type | Class and Description |
---|---|
class |
AbstractPartialSolutionNode
The optimizer's internal representation of the partial solution that is input to a bulk
iteration.
|
class |
BinaryUnionNode
The Optimizer representation of a binary Union.
|
class |
BulkIterationNode
A node in the optimizer's program representation for a bulk iteration.
|
class |
BulkPartialSolutionNode
The optimizer's internal representation of the partial solution that is input to a bulk
iteration.
|
class |
CoGroupNode
The Optimizer representation of a CoGroup operator.
|
class |
CoGroupRawNode
The Optimizer representation of a CoGroupRaw operator.
|
class |
CrossNode
The Optimizer representation of a Cross (Cartesian product) operator.
|
class |
DataSinkNode
The Optimizer representation of a data sink.
|
class |
DataSourceNode
The optimizer's internal representation of a data source.
|
class |
FilterNode
The optimizer's internal representation of a Filter operator node.
|
class |
FlatMapNode
The optimizer's internal representation of a FlatMap operator node.
|
class |
GroupCombineNode
The optimizer representation of a GroupCombineNode operation.
|
class |
GroupReduceNode
The optimizer representation of a GroupReduce operation.
|
class |
JoinNode
The Optimizer representation of a join operator.
|
class |
MapNode
The optimizer's internal representation of a Map operator node.
|
class |
MapPartitionNode
The optimizer's internal representation of a MapPartition operator node.
|
class |
NoOpNode
The optimizer's internal representation of a No Operation node.
|
class |
OuterJoinNode |
class |
PartitionNode
The optimizer's internal representation of a Partition operator node.
|
class |
ReduceNode
The Optimizer representation of a Reduce operator.
|
class |
SingleInputNode
A node in the optimizer's program representation for an operation with a single input.
|
class |
SinkJoiner
This class represents a utility node that is not part of the actual plan.
|
class |
SolutionSetNode
The optimizer's internal representation of the solution set of a workset iteration.
|
class |
SortPartitionNode
The optimizer's internal representation of a SortPartition operator node.
|
class |
TwoInputNode
A node in the optimizer plan that represents an operator with a two different inputs, such as
Join, Cross, CoGroup, or Union.
|
class |
UnaryOperatorNode |
class |
WorksetIterationNode
A node in the optimizer's program representation for a workset iteration.
|
static class |
WorksetIterationNode.SingleRootJoiner |
class |
WorksetNode
The optimizer's internal representation of the partial solution that is input to a bulk
iteration.
|
Modifier and Type | Field and Description |
---|---|
protected OptimizerNode |
OptimizerNode.UnclosedBranchDescriptor.branchingNode |
Modifier and Type | Field and Description |
---|---|
protected Set<OptimizerNode> |
OptimizerNode.closedBranchingNodes |
protected List<OptimizerNode> |
OptimizerNode.hereJoinedBranches |
Modifier and Type | Method and Description |
---|---|
OptimizerNode |
OptimizerNode.UnclosedBranchDescriptor.getBranchingNode() |
OptimizerNode |
TwoInputNode.getFirstPredecessorNode() |
OptimizerNode |
WorksetIterationNode.getInitialSolutionSetPredecessorNode() |
OptimizerNode |
WorksetIterationNode.getInitialWorksetPredecessorNode() |
OptimizerNode |
BulkIterationNode.getNextPartialSolution()
Gets the nextPartialSolution from this BulkIterationNode.
|
OptimizerNode |
WorksetIterationNode.getNextWorkset() |
OptimizerNode |
OptimizerNode.getOptimizerNode() |
OptimizerNode |
DataSinkNode.getPredecessorNode()
Gets the predecessor of this node.
|
OptimizerNode |
SingleInputNode.getPredecessorNode()
Gets the predecessor of this node.
|
OptimizerNode |
TwoInputNode.getSecondPredecessorNode() |
OptimizerNode |
BulkIterationNode.getSingleRootOfStepFunction() |
OptimizerNode |
WorksetIterationNode.getSolutionSetDelta() |
OptimizerNode |
DagConnection.getSource()
Gets the source of the connection.
|
OptimizerNode |
DagConnection.getTarget()
Gets the target of the connection.
|
Modifier and Type | Method and Description |
---|---|
Set<OptimizerNode> |
OptimizerNode.getClosedBranchingNodes() |
Iterable<DumpableConnection<OptimizerNode>> |
OptimizerNode.getDumpableInputs() |
Iterable<OptimizerNode> |
OptimizerNode.getPredecessors() |
Modifier and Type | Method and Description |
---|---|
protected void |
OptimizerNode.addClosedBranch(OptimizerNode alreadyClosed) |
protected void |
AbstractPartialSolutionNode.copyEstimates(OptimizerNode node) |
void |
BulkIterationNode.setNextPartialSolution(OptimizerNode nextPartialSolution,
OptimizerNode terminationCriterion)
Sets the nextPartialSolution for this BulkIterationNode.
|
void |
WorksetIterationNode.setNextPartialSolution(OptimizerNode solutionSetDelta,
OptimizerNode nextWorkset,
ExecutionMode executionMode) |
Modifier and Type | Method and Description |
---|---|
void |
DataSinkNode.accept(Visitor<OptimizerNode> visitor) |
void |
DataSourceNode.accept(Visitor<OptimizerNode> visitor) |
void |
TwoInputNode.accept(Visitor<OptimizerNode> visitor) |
void |
AbstractPartialSolutionNode.accept(Visitor<OptimizerNode> visitor) |
abstract void |
OptimizerNode.accept(Visitor<OptimizerNode> visitor)
This method implements the visit of a depth-first graph traversing visitor.
|
void |
SingleInputNode.accept(Visitor<OptimizerNode> visitor) |
void |
IterationNode.acceptForStepFunction(Visitor<OptimizerNode> visitor) |
void |
WorksetIterationNode.acceptForStepFunction(Visitor<OptimizerNode> visitor) |
void |
BulkIterationNode.acceptForStepFunction(Visitor<OptimizerNode> visitor) |
protected void |
OptimizerNode.addClosedBranches(Set<OptimizerNode> alreadyClosed) |
void |
OptimizerNode.setBroadcastInputs(Map<Operator<?>,OptimizerNode> operatorToNode,
ExecutionMode defaultExchangeMode)
This function connects the operators that produce the broadcast inputs to this operator.
|
void |
DataSinkNode.setInput(Map<Operator<?>,OptimizerNode> contractToNode,
ExecutionMode defaultExchangeMode) |
void |
DataSourceNode.setInput(Map<Operator<?>,OptimizerNode> contractToNode,
ExecutionMode defaultDataExchangeMode) |
void |
TwoInputNode.setInput(Map<Operator<?>,OptimizerNode> contractToNode,
ExecutionMode defaultExecutionMode) |
void |
AbstractPartialSolutionNode.setInput(Map<Operator<?>,OptimizerNode> contractToNode,
ExecutionMode dataExchangeMode) |
abstract void |
OptimizerNode.setInput(Map<Operator<?>,OptimizerNode> operatorToNode,
ExecutionMode defaultExchangeMode)
This function connects the predecessors to this operator.
|
void |
SingleInputNode.setInput(Map<Operator<?>,OptimizerNode> contractToNode,
ExecutionMode defaultExchangeMode) |
Constructor and Description |
---|
DagConnection(OptimizerNode source,
ExecutionMode exchangeMode)
Constructor to create a result from an operator that is not consumed by another operator.
|
DagConnection(OptimizerNode source,
OptimizerNode target,
ExecutionMode exchangeMode)
Creates a new Connection between two nodes.
|
DagConnection(OptimizerNode source,
OptimizerNode target,
ShipStrategyType shipStrategy,
ExecutionMode exchangeMode)
Creates a new Connection between two nodes.
|
OptimizerNode(OptimizerNode toCopy) |
SinkJoiner(OptimizerNode input1,
OptimizerNode input2) |
UnclosedBranchDescriptor(OptimizerNode branchingNode,
long joinedPathsVector)
Creates a new branching descriptor.
|
Modifier and Type | Method and Description |
---|---|
InterestingProperties |
InterestingProperties.filterByCodeAnnotations(OptimizerNode node,
int input) |
Modifier and Type | Field and Description |
---|---|
protected OptimizerNode |
PlanNode.template |
Modifier and Type | Field and Description |
---|---|
protected Map<OptimizerNode,PlanNode> |
PlanNode.branchPlan |
Modifier and Type | Method and Description |
---|---|
OptimizerNode |
PlanNode.getOptimizerNode() |
OptimizerNode |
PlanNode.getOriginalOptimizerNode()
Gets the node from the optimizer DAG for which this plan candidate node was created.
|
Modifier and Type | Method and Description |
---|---|
Map<OptimizerNode,PlanNode> |
PlanNode.getBranchPlan() |
Modifier and Type | Method and Description |
---|---|
PlanNode |
PlanNode.getCandidateAtBranchPoint(OptimizerNode branchPoint) |
Modifier and Type | Method and Description |
---|---|
protected void |
WorksetIterationPlanNode.mergeBranchPlanMaps(Map<OptimizerNode,PlanNode> branchPlan1,
Map<OptimizerNode,PlanNode> branchPlan2)
Merging can only take place after the solutionSetDelta and nextWorkset PlanNode has been set,
because they can contain also some of the branching nodes.
|
protected void |
WorksetIterationPlanNode.mergeBranchPlanMaps(Map<OptimizerNode,PlanNode> branchPlan1,
Map<OptimizerNode,PlanNode> branchPlan2)
Merging can only take place after the solutionSetDelta and nextWorkset PlanNode has been set,
because they can contain also some of the branching nodes.
|
protected void |
PlanNode.mergeBranchPlanMaps(Map<OptimizerNode,PlanNode> branchPlan1,
Map<OptimizerNode,PlanNode> branchPlan2) |
protected void |
PlanNode.mergeBranchPlanMaps(Map<OptimizerNode,PlanNode> branchPlan1,
Map<OptimizerNode,PlanNode> branchPlan2) |
Constructor and Description |
---|
DualInputPlanNode(OptimizerNode template,
String nodeName,
Channel input1,
Channel input2,
DriverStrategy diverStrategy) |
DualInputPlanNode(OptimizerNode template,
String nodeName,
Channel input1,
Channel input2,
DriverStrategy diverStrategy,
FieldList driverKeyFields1,
FieldList driverKeyFields2) |
DualInputPlanNode(OptimizerNode template,
String nodeName,
Channel input1,
Channel input2,
DriverStrategy diverStrategy,
FieldList driverKeyFields1,
FieldList driverKeyFields2,
boolean[] driverSortOrders) |
PlanNode(OptimizerNode template,
String nodeName,
DriverStrategy strategy) |
SingleInputPlanNode(OptimizerNode template,
String nodeName,
Channel input,
DriverStrategy driverStrategy) |
SingleInputPlanNode(OptimizerNode template,
String nodeName,
Channel input,
DriverStrategy driverStrategy,
FieldList driverKeyFields) |
SingleInputPlanNode(OptimizerNode template,
String nodeName,
Channel input,
DriverStrategy driverStrategy,
FieldList driverKeyFields,
boolean[] driverSortOrders) |
Modifier and Type | Method and Description |
---|---|
OptimizerNode |
DumpableNode.getOptimizerNode() |
Modifier and Type | Method and Description |
---|---|
void |
UnionParallelismAndForwardEnforcer.postVisit(OptimizerNode node) |
void |
InterestingPropertyVisitor.postVisit(OptimizerNode visitable) |
void |
StaticDynamicPathIdentifier.postVisit(OptimizerNode visitable) |
void |
IdAndEstimatesVisitor.postVisit(OptimizerNode visitable) |
void |
BranchesVisitor.postVisit(OptimizerNode node) |
boolean |
UnionParallelismAndForwardEnforcer.preVisit(OptimizerNode node) |
boolean |
InterestingPropertyVisitor.preVisit(OptimizerNode node) |
boolean |
StaticDynamicPathIdentifier.preVisit(OptimizerNode visitable) |
boolean |
IdAndEstimatesVisitor.preVisit(OptimizerNode visitable) |
boolean |
BranchesVisitor.preVisit(OptimizerNode node) |
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.