public class BinaryUnionNode extends TwoInputNode
Modifier and Type | Class and Description |
---|---|
static class |
BinaryUnionNode.UnionSemanticProperties |
OptimizerNode.UnclosedBranchDescriptor
input1, input2, keys1, keys2
cachedPlans, closedBranchingNodes, costWeight, estimatedNumRecords, estimatedOutputSize, hereJoinedBranches, id, MAX_DYNAMIC_PATH_COST_WEIGHT, onDynamicPath, openBranches, uniqueFields
Constructor and Description |
---|
BinaryUnionNode(Union<?> union) |
Modifier and Type | Method and Description |
---|---|
void |
addOutgoingConnection(DagConnection connection)
Adds a new outgoing connection to this node.
|
void |
computeInterestingPropertiesForInputs(CostEstimator estimator)
Tells the node to compute the interesting properties for its inputs.
|
protected void |
computeOperatorSpecificDefaultEstimates(DataStatistics statistics) |
void |
computeOutputEstimates(DataStatistics statistics)
Causes this node to compute its output estimates (such as number of rows, size in bytes)
based on the inputs and the compiler hints.
|
void |
computeUnionOfInterestingPropertiesFromSuccessors()
Computes all the interesting properties that are relevant to this node.
|
List<PlanNode> |
getAlternativePlans(CostEstimator estimator)
Computes the plan alternatives for this node, an implicitly for all nodes that are children
of this node.
|
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() |
SemanticProperties |
getSemanticProperties() |
protected void |
readStubAnnotations()
Reads all stub annotations, i.e.
|
accept, addLocalCandidates, computeUnclosedBranchStack, getFirstIncomingConnection, getFirstPredecessorNode, getIncomingConnections, getOperator, getSecondIncomingConnection, getSecondPredecessorNode, getSemanticPropertiesForGlobalPropertyFiltering, getSemanticPropertiesForLocalPropertyFiltering, instantiate, placePipelineBreakersIfNecessary, setInput
addBroadcastConnection, addClosedBranch, addClosedBranches, areBranchCompatible, clearInterestingProperties, computeUnclosedBranchStackForBroadcastInputs, getBranchesForParent, getBroadcastConnectionNames, getBroadcastConnections, getClosedBranchingNodes, getCostWeight, 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, toString
public BinaryUnionNode(Union<?> union)
public void addOutgoingConnection(DagConnection connection)
OptimizerNode
addOutgoingConnection
in class OptimizerNode
connection
- The connection to add.public String getOperatorName()
OptimizerNode
getOperatorName
in class OptimizerNode
protected List<OperatorDescriptorDual> getPossibleProperties()
getPossibleProperties
in class TwoInputNode
protected void computeOperatorSpecificDefaultEstimates(DataStatistics statistics)
computeOperatorSpecificDefaultEstimates
in class OptimizerNode
public void computeUnionOfInterestingPropertiesFromSuccessors()
OptimizerNode
computeUnionOfInterestingPropertiesFromSuccessors
in class OptimizerNode
public void computeInterestingPropertiesForInputs(CostEstimator estimator)
OptimizerNode
computeInterestingPropertiesForInputs
in class TwoInputNode
estimator
- The CostEstimator
instance to use for plan cost estimation.public List<PlanNode> getAlternativePlans(CostEstimator estimator)
OptimizerNode
getAlternatives()
on its
children to get their plan alternatives, and build its own alternatives on top of those.getAlternativePlans
in class TwoInputNode
estimator
- The cost estimator used to estimate the costs of each plan alternative.protected void readStubAnnotations()
OptimizerNode
readStubAnnotations
in class OptimizerNode
public SemanticProperties getSemanticProperties()
getSemanticProperties
in class TwoInputNode
public void computeOutputEstimates(DataStatistics statistics)
OptimizerNode
computeOutputEstimates
in class OptimizerNode
statistics
- The statistics object which may be accessed to get statistical information.
The parameter may be null, if no statistics are available.Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.