public class WorksetIterationNode extends TwoInputNode implements IterationNode
| 限定符和类型 | 类和说明 |
|---|---|
static class |
WorksetIterationNode.SingleRootJoiner |
OptimizerNode.UnclosedBranchDescriptorinput1, input2, keys1, keys2cachedPlans, closedBranchingNodes, estimatedNumRecords, estimatedOutputSize, hereJoinedBranches, id, MAX_DYNAMIC_PATH_COST_WEIGHT, onDynamicPath, openBranches, uniqueFields| 构造器和说明 |
|---|
WorksetIterationNode(org.apache.flink.api.common.operators.base.DeltaIterationBase<?,?> iteration)
Creates a new node with a single input for the optimizer plan.
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
acceptForStepFunction(org.apache.flink.util.Visitor<OptimizerNode> visitor) |
void |
clearInterestingProperties() |
void |
computeInterestingPropertiesForInputs(CostEstimator estimator)
Tells the node to compute the interesting properties for its inputs.
|
protected void |
computeOperatorSpecificDefaultEstimates(DataStatistics statistics) |
void |
computeUnclosedBranchStack()
This method causes the node to compute the description of open branches in its sub-plan.
|
int |
getCostWeight() |
OptimizerNode |
getInitialSolutionSetPredecessorNode() |
OptimizerNode |
getInitialWorksetPredecessorNode() |
org.apache.flink.api.common.operators.base.DeltaIterationBase<?,?> |
getIterationContract() |
OptimizerNode |
getNextWorkset() |
String |
getOperatorName()
Gets the name of this node, which is the name of the function/operator, or data source / data
sink.
|
protected List<OperatorDescriptorDual> |
getPossibleProperties() |
org.apache.flink.api.common.operators.SemanticProperties |
getSemanticProperties() |
TwoInputNode |
getSingleRootOfStepFunction() |
OptimizerNode |
getSolutionSetDelta() |
org.apache.flink.api.common.operators.util.FieldList |
getSolutionSetKeyFields() |
SolutionSetNode |
getSolutionSetNode() |
WorksetNode |
getWorksetNode() |
protected void |
instantiate(OperatorDescriptorDual operator,
Channel solutionSetIn,
Channel worksetIn,
List<Set<? extends NamedChannel>> broadcastPlanChannels,
List<PlanNode> target,
CostEstimator estimator,
RequestedGlobalProperties globPropsReqSolutionSet,
RequestedGlobalProperties globPropsReqWorkset,
RequestedLocalProperties locPropsReqSolutionSet,
RequestedLocalProperties locPropsReqWorkset) |
protected void |
readStubAnnotations()
Reads all stub annotations, i.e. which fields remain constant, what cardinality bounds the
functions have, which fields remain unique.
|
void |
setNextPartialSolution(OptimizerNode solutionSetDelta,
OptimizerNode nextWorkset,
org.apache.flink.api.common.ExecutionMode executionMode) |
void |
setPartialSolution(SolutionSetNode solutionSetNode,
WorksetNode worksetNode) |
accept, addLocalCandidates, getAlternativePlans, getFirstIncomingConnection, getFirstPredecessorNode, getIncomingConnections, getOperator, getSecondIncomingConnection, getSecondPredecessorNode, getSemanticPropertiesForGlobalPropertyFiltering, getSemanticPropertiesForLocalPropertyFiltering, placePipelineBreakersIfNecessary, setInputaddBroadcastConnection, addClosedBranch, addClosedBranches, addOutgoingConnection, areBranchCompatible, computeOutputEstimates, computeUnclosedBranchStackForBroadcastInputs, computeUnionOfInterestingPropertiesFromSuccessors, getBranchesForParent, getBroadcastConnectionNames, getBroadcastConnections, getClosedBranchingNodes, getDumpableInputs, getEstimatedAvgWidthPerOutputRecord, getEstimatedNumRecords, getEstimatedOutputSize, getId, getInterestingProperties, getMaxDepth, getMinimalMemoryAcrossAllSubTasks, getOpenBranches, getOptimizerNode, getOutgoingConnections, getParallelism, getPlanNode, getPredecessors, getUniqueFields, hasUnclosedBranches, haveAllOutputConnectionInterestingProperties, identifyDynamicPath, initId, isBranching, isOnDynamicPath, markAllOutgoingConnectionsAsPipelineBreaking, mergeLists, prunePlanAlternatives, prunePlanAlternativesWithCommonBranching, readUniqueFieldsAnnotation, removeClosedBranches, setBroadcastInputs, setEstimatedNumRecords, setEstimatedOutputSize, setParallelism, toStringpublic WorksetIterationNode(org.apache.flink.api.common.operators.base.DeltaIterationBase<?,?> iteration)
iteration - The iteration operator that the node represents.public org.apache.flink.api.common.operators.base.DeltaIterationBase<?,?> getIterationContract()
public SolutionSetNode getSolutionSetNode()
public WorksetNode getWorksetNode()
public OptimizerNode getNextWorkset()
public OptimizerNode getSolutionSetDelta()
public void setPartialSolution(SolutionSetNode solutionSetNode, WorksetNode worksetNode)
public void setNextPartialSolution(OptimizerNode solutionSetDelta, OptimizerNode nextWorkset, org.apache.flink.api.common.ExecutionMode executionMode)
public int getCostWeight()
getCostWeight 在类中 OptimizerNodepublic TwoInputNode getSingleRootOfStepFunction()
public org.apache.flink.api.common.operators.util.FieldList getSolutionSetKeyFields()
public OptimizerNode getInitialSolutionSetPredecessorNode()
public OptimizerNode getInitialWorksetPredecessorNode()
public String getOperatorName()
OptimizerNodegetOperatorName 在类中 OptimizerNodepublic org.apache.flink.api.common.operators.SemanticProperties getSemanticProperties()
getSemanticProperties 在类中 TwoInputNodeprotected void readStubAnnotations()
OptimizerNodereadStubAnnotations 在类中 OptimizerNodeprotected void computeOperatorSpecificDefaultEstimates(DataStatistics statistics)
protected List<OperatorDescriptorDual> getPossibleProperties()
getPossibleProperties 在类中 TwoInputNodepublic void computeInterestingPropertiesForInputs(CostEstimator estimator)
OptimizerNodecomputeInterestingPropertiesForInputs 在类中 TwoInputNodeestimator - The CostEstimator instance to use for plan cost estimation.public void clearInterestingProperties()
protected void instantiate(OperatorDescriptorDual operator, Channel solutionSetIn, Channel worksetIn, List<Set<? extends NamedChannel>> broadcastPlanChannels, List<PlanNode> target, CostEstimator estimator, RequestedGlobalProperties globPropsReqSolutionSet, RequestedGlobalProperties globPropsReqWorkset, RequestedLocalProperties locPropsReqSolutionSet, RequestedLocalProperties locPropsReqWorkset)
instantiate 在类中 TwoInputNodepublic void computeUnclosedBranchStack()
OptimizerNodeopenBranches
field to a stack of unclosed branches, the latest one top. A branch is considered closed, if
some later node sees all of the branching node's outputs, no matter if there have been more
branches to different paths in the meantime.public void acceptForStepFunction(org.apache.flink.util.Visitor<OptimizerNode> visitor)
acceptForStepFunction 在接口中 IterationNodeCopyright © 2014–2024 The Apache Software Foundation. All rights reserved.