@ExecNodeMetadata(name="stream-exec-sink", version=1, consumedOptions={"table.exec.sink.not-null-enforcer","table.exec.sink.type-length-enforcer","table.exec.sink.upsert-materialize","table.exec.sink.keyed-shuffle","table.exec.sink.rowtime-inserter"}, producedTransformations={"constraint-validator","partitioner","upsert-materialize","timestamp-inserter","sink"}, minPlanVersion=v1_15, minStateVersion=v1_15) public class StreamExecSink extends CommonExecSink implements StreamExecNode<Object>
ExecNode to write data into an external sink defined by a DynamicTableSink.| Modifier and Type | Field and Description |
|---|---|
static String |
FIELD_NAME_INPUT_CHANGELOG_MODE |
static String |
FIELD_NAME_INPUT_UPSERT_KEY |
static String |
FIELD_NAME_REQUIRE_UPSERT_MATERIALIZE |
static String |
STATE_NAME
New introduced state metadata to enable operator-level state TTL configuration.
|
CONSTRAINT_VALIDATOR_TRANSFORMATION, FIELD_NAME_DYNAMIC_TABLE_SINK, PARTITIONER_TRANSFORMATION, ROW_KIND_SETTER, SINK_TRANSFORMATION, sinkParallelismConfigured, tableSinkSpec, TIMESTAMP_INSERTER_TRANSFORMATION, UPSERT_MATERIALIZE_TRANSFORMATIONFIELD_NAME_CONFIGURATION, FIELD_NAME_DESCRIPTION, FIELD_NAME_ID, FIELD_NAME_INPUT_PROPERTIES, FIELD_NAME_OUTPUT_TYPE, FIELD_NAME_STATE, FIELD_NAME_TYPE| Constructor and Description |
|---|
StreamExecSink(int id,
ExecNodeContext context,
org.apache.flink.configuration.ReadableConfig persistedConfig,
DynamicTableSinkSpec tableSinkSpec,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
boolean upsertMaterialize,
List<StateMetadata> stateMetadataList,
int[] inputUpsertKey,
List<InputProperty> inputProperties,
org.apache.flink.table.types.logical.LogicalType outputType,
String description) |
StreamExecSink(org.apache.flink.configuration.ReadableConfig tableConfig,
DynamicTableSinkSpec tableSinkSpec,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
InputProperty inputProperty,
org.apache.flink.table.types.logical.LogicalType outputType,
boolean upsertMaterialize,
int[] inputUpsertKey,
String description) |
| Modifier and Type | Method and Description |
|---|---|
protected 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> |
translateToPlanInternal(PlannerBase planner,
ExecNodeConfig config)
Internal method, translates this node into a Flink operator.
|
createSinkTransformation, getPhysicalRowType, getPrimaryKeyIndices, getSimplifiedName, getTableSinkSpecaccept, createFormattedTransformationDescription, createFormattedTransformationName, createTransformationDescription, createTransformationMeta, createTransformationMeta, createTransformationName, createTransformationUid, getContextFromAnnotation, getDescription, getId, getInputEdges, getInputProperties, getOutputType, getPersistedConfig, getTransformation, inputsContainSingleton, replaceInputEdge, setCompiled, setInputEdges, supportFusionCodegen, translateToFusionCodegenSpec, translateToFusionCodegenSpecInternal, translateToPlanclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaccept, getDescription, getId, getInputEdges, getInputProperties, getOutputType, replaceInputEdge, setCompiled, setInputEdgestranslateToPlansupportFusionCodegen, translateToFusionCodegenSpecpublic static final String FIELD_NAME_INPUT_CHANGELOG_MODE
public static final String FIELD_NAME_REQUIRE_UPSERT_MATERIALIZE
public static final String FIELD_NAME_INPUT_UPSERT_KEY
public static final String STATE_NAME
public StreamExecSink(org.apache.flink.configuration.ReadableConfig tableConfig,
DynamicTableSinkSpec tableSinkSpec,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
InputProperty inputProperty,
org.apache.flink.table.types.logical.LogicalType outputType,
boolean upsertMaterialize,
int[] inputUpsertKey,
String description)
public StreamExecSink(int id,
ExecNodeContext context,
org.apache.flink.configuration.ReadableConfig persistedConfig,
DynamicTableSinkSpec tableSinkSpec,
org.apache.flink.table.connector.ChangelogMode inputChangelogMode,
boolean upsertMaterialize,
@Nullable
List<StateMetadata> stateMetadataList,
int[] inputUpsertKey,
List<InputProperty> inputProperties,
org.apache.flink.table.types.logical.LogicalType outputType,
String description)
protected org.apache.flink.api.dag.Transformation<Object> translateToPlanInternal(PlannerBase planner, ExecNodeConfig config)
ExecNodeBasetranslateToPlanInternal in class ExecNodeBase<Object>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.protected 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)
applyUpsertMaterialize in class CommonExecSinkCopyright © 2014–2025 The Apache Software Foundation. All rights reserved.