Class CommonExecSink
java.lang.Object
org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase<Object>
org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecSink
- All Implemented Interfaces:
ExecNode<Object>,ExecNodeTranslator<Object>,FusionCodegenExecNode,MultipleTransformationTranslator<Object>
- Direct Known Subclasses:
BatchExecSink,StreamExecSink
public abstract class CommonExecSink
extends ExecNodeBase<Object>
implements MultipleTransformationTranslator<Object>
Base
ExecNode to write data to an external sink defined by a DynamicTableSink.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringprotected booleanprotected final DynamicTableSinkSpecstatic final Stringstatic final StringFields inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNode
FIELD_NAME_CONFIGURATION, FIELD_NAME_DESCRIPTION, FIELD_NAME_ID, FIELD_NAME_INPUT_PROPERTIES, FIELD_NAME_OUTPUT_TYPE, FIELD_NAME_STATE, FIELD_NAME_TYPE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCommonExecSink(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, DynamicTableSinkSpec tableSinkSpec, org.apache.flink.table.connector.ChangelogMode inputChangelogMode, boolean isBounded, List<InputProperty> inputProperties, org.apache.flink.table.types.logical.LogicalType outputType, String description) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData>applyUpsertMaterialize(org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> inputTransform, int[] primaryKeys, int sinkParallelism, ExecNodeConfig config, ClassLoader classLoader, org.apache.flink.table.types.logical.RowType physicalRowType, int[] inputUpsertKey) protected org.apache.flink.api.dag.Transformation<Object>createSinkTransformation(org.apache.flink.streaming.api.environment.StreamExecutionEnvironment streamExecEnv, ExecNodeConfig config, ClassLoader classLoader, org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> inputTransform, org.apache.flink.table.connector.sink.DynamicTableSink tableSink, int rowtimeFieldIndex, boolean upsertMaterialize, int[] inputUpsertKey) protected org.apache.flink.table.types.logical.RowTypegetPhysicalRowType(org.apache.flink.table.catalog.ResolvedSchema schema) protected int[]getPrimaryKeyIndices(org.apache.flink.table.types.logical.RowType sinkRowType, org.apache.flink.table.catalog.ResolvedSchema schema) Methods inherited from class org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase
accept, createFormattedTransformationDescription, createFormattedTransformationName, createTransformationDescription, createTransformationMeta, createTransformationMeta, createTransformationName, createTransformationUid, getContextFromAnnotation, getDescription, getId, getInputEdges, getInputProperties, getOutputType, getPersistedConfig, getTransformation, inputsContainSingleton, replaceInputEdge, setCompiled, setInputEdges, supportFusionCodegen, translateToFusionCodegenSpec, translateToFusionCodegenSpecInternal, translateToPlan, translateToPlanInternalMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.table.planner.plan.nodes.exec.ExecNodeTranslator
translateToPlan
-
Field Details
-
CONSTRAINT_VALIDATOR_TRANSFORMATION
- See Also:
-
PARTITIONER_TRANSFORMATION
- See Also:
-
UPSERT_MATERIALIZE_TRANSFORMATION
- See Also:
-
TIMESTAMP_INSERTER_TRANSFORMATION
- See Also:
-
ROW_KIND_SETTER
- See Also:
-
SINK_TRANSFORMATION
- See Also:
-
FIELD_NAME_DYNAMIC_TABLE_SINK
- See Also:
-
tableSinkSpec
-
sinkParallelismConfigured
protected boolean sinkParallelismConfigured
-
-
Constructor Details
-
CommonExecSink
protected CommonExecSink(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, DynamicTableSinkSpec tableSinkSpec, org.apache.flink.table.connector.ChangelogMode inputChangelogMode, boolean isBounded, List<InputProperty> inputProperties, org.apache.flink.table.types.logical.LogicalType outputType, String description)
-
-
Method Details
-
getSimplifiedName
- Overrides:
getSimplifiedNamein classExecNodeBase<Object>
-
getTableSinkSpec
-
createSinkTransformation
protected org.apache.flink.api.dag.Transformation<Object> createSinkTransformation(org.apache.flink.streaming.api.environment.StreamExecutionEnvironment streamExecEnv, ExecNodeConfig config, ClassLoader classLoader, org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> inputTransform, org.apache.flink.table.connector.sink.DynamicTableSink tableSink, int rowtimeFieldIndex, boolean upsertMaterialize, int[] inputUpsertKey) -
applyUpsertMaterialize
protected abstract org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> applyUpsertMaterialize(org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> inputTransform, int[] primaryKeys, int sinkParallelism, ExecNodeConfig config, ClassLoader classLoader, org.apache.flink.table.types.logical.RowType physicalRowType, int[] inputUpsertKey) -
getPrimaryKeyIndices
protected int[] getPrimaryKeyIndices(org.apache.flink.table.types.logical.RowType sinkRowType, org.apache.flink.table.catalog.ResolvedSchema schema) -
getPhysicalRowType
protected org.apache.flink.table.types.logical.RowType getPhysicalRowType(org.apache.flink.table.catalog.ResolvedSchema schema)
-