T - The type of the elements that result from this node.public abstract class ExecNodeBase<T> extends Object implements ExecNode<T>
ExecNode.FIELD_NAME_CONFIGURATION, FIELD_NAME_DESCRIPTION, FIELD_NAME_ID, FIELD_NAME_INPUT_PROPERTIES, FIELD_NAME_OUTPUT_TYPE, FIELD_NAME_TYPE| 限定符 | 构造器和说明 |
|---|---|
protected |
ExecNodeBase(int id,
ExecNodeContext context,
org.apache.flink.configuration.ReadableConfig persistedConfig,
List<InputProperty> inputProperties,
org.apache.flink.table.types.logical.LogicalType outputType,
String description) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
accept(ExecNodeVisitor visitor)
Accepts a visit from a
ExecNodeVisitor. |
protected String |
createFormattedTransformationDescription(String description,
org.apache.flink.configuration.ReadableConfig config) |
protected String |
createFormattedTransformationName(String detailName,
String simplifiedName,
org.apache.flink.configuration.ReadableConfig config) |
protected String |
createTransformationDescription(org.apache.flink.configuration.ReadableConfig config) |
protected TransformationMetadata |
createTransformationMeta(String operatorName,
org.apache.flink.configuration.ReadableConfig config) |
protected TransformationMetadata |
createTransformationMeta(String operatorName,
String detailName,
String simplifiedName,
org.apache.flink.configuration.ReadableConfig config) |
protected String |
createTransformationName(org.apache.flink.configuration.ReadableConfig config) |
protected String |
createTransformationUid(String operatorName) |
protected ExecNodeContext |
getContextFromAnnotation()
Retrieves the default context from the
ExecNodeMetadata annotation to be serialized
into the JSON plan. |
String |
getDescription()
Returns a string which describes this node.
|
int |
getId()
The unique ID of the node.
|
List<ExecEdge> |
getInputEdges()
Returns a list of this node's input
ExecEdges. |
List<InputProperty> |
getInputProperties()
Returns a list of this node's input properties.
|
org.apache.flink.table.types.logical.LogicalType |
getOutputType()
Returns the output
LogicalType of this node, this type should be consistent with the
type parameter T. |
org.apache.flink.configuration.ReadableConfig |
getPersistedConfig() |
protected String |
getSimplifiedName() |
protected boolean |
inputsContainSingleton()
Whether singleton distribution is required.
|
void |
replaceInputEdge(int index,
ExecEdge newInputEdge)
Replaces the
ordinalInParentth input edge. |
void |
setInputEdges(List<ExecEdge> inputEdges)
Sets the input
ExecEdges which connect this nodes and its input nodes. |
org.apache.flink.api.dag.Transformation<T> |
translateToPlan(org.apache.flink.table.delegation.Planner planner)
Translates this node into a
Transformation. |
protected abstract org.apache.flink.api.dag.Transformation<T> |
translateToPlanInternal(org.apache.flink.table.planner.delegation.PlannerBase planner,
ExecNodeConfig config)
Internal method, translates this node into a Flink operator.
|
protected ExecNodeBase(int id,
ExecNodeContext context,
org.apache.flink.configuration.ReadableConfig persistedConfig,
List<InputProperty> inputProperties,
org.apache.flink.table.types.logical.LogicalType outputType,
String description)
protected final ExecNodeContext getContextFromAnnotation()
ExecNodeMetadata annotation to be serialized
into the JSON plan.public org.apache.flink.configuration.ReadableConfig getPersistedConfig()
public final int getId()
ExecNodepublic String getDescription()
ExecNodegetDescription 在接口中 ExecNode<T>public org.apache.flink.table.types.logical.LogicalType getOutputType()
ExecNodeLogicalType of this node, this type should be consistent with the
type parameter T.
Such as, if T is RowData, the output type should be RowType. please refer
to the JavaDoc of RowData for more info about mapping of logical types to internal
data structures.
getOutputType 在接口中 ExecNode<T>public List<InputProperty> getInputProperties()
ExecNodeNOTE: If there are no inputs, returns an empty list, not null.
getInputProperties 在接口中 ExecNode<T>public List<ExecEdge> getInputEdges()
ExecNodeExecEdges.
NOTE: If there are no inputs, returns an empty list, not null.
getInputEdges 在接口中 ExecNode<T>public void setInputEdges(List<ExecEdge> inputEdges)
ExecNodeExecEdges which connect this nodes and its input nodes.
NOTE: If there are no inputs, the given inputEdges should be empty, not null.
setInputEdges 在接口中 ExecNode<T>inputEdges - the input ExecEdges.public void replaceInputEdge(int index,
ExecEdge newInputEdge)
ExecNodeordinalInParentth input edge.replaceInputEdge 在接口中 ExecNode<T>index - Position of the child input edge, 0 is the first.newInputEdge - New edge that should be put at position `index`.public final org.apache.flink.api.dag.Transformation<T> translateToPlan(org.apache.flink.table.delegation.Planner planner)
ExecNodeTranslatorTransformation.
NOTE: This method should return same translate result if called multiple times.
translateToPlan 在接口中 ExecNodeTranslator<T>planner - The Planner of the translated Table.protected abstract org.apache.flink.api.dag.Transformation<T> translateToPlanInternal(org.apache.flink.table.planner.delegation.PlannerBase planner, ExecNodeConfig config)
planner - The planner.config - per-ExecNode configuration that contains the merged configuration from
various layers which all the nodes implementing this method should use, instead of
retrieving configuration from the planner. For more details check ExecNodeConfig.public void accept(ExecNodeVisitor visitor)
ExecNodeExecNodeVisitor.protected boolean inputsContainSingleton()
protected String getSimplifiedName()
protected String createTransformationName(org.apache.flink.configuration.ReadableConfig config)
protected String createTransformationDescription(org.apache.flink.configuration.ReadableConfig config)
protected TransformationMetadata createTransformationMeta(String operatorName, org.apache.flink.configuration.ReadableConfig config)
protected TransformationMetadata createTransformationMeta(String operatorName, String detailName, String simplifiedName, org.apache.flink.configuration.ReadableConfig config)
protected String createFormattedTransformationDescription(String description, org.apache.flink.configuration.ReadableConfig config)
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.