@Internal public class HBaseDynamicTableSink extends Object implements DynamicTableSink
DynamicTableSink.Context, DynamicTableSink.DataStructureConverter, DynamicTableSink.SinkRuntimeProvider
Constructor and Description |
---|
HBaseDynamicTableSink(String tableName,
HBaseTableSchema hbaseTableSchema,
Configuration hbaseConf,
HBaseWriteOptions writeOptions,
String nullStringLiteral) |
Modifier and Type | Method and Description |
---|---|
String |
asSummaryString()
Returns a string that summarizes this sink for printing to a console or log.
|
DynamicTableSink |
copy()
Creates a copy of this instance during planning.
|
ChangelogMode |
getChangelogMode(ChangelogMode requestedMode)
Returns the set of changes that the sink accepts during runtime.
|
Configuration |
getConfiguration() |
HBaseTableSchema |
getHBaseTableSchema() |
DynamicTableSink.SinkRuntimeProvider |
getSinkRuntimeProvider(DynamicTableSink.Context context)
Returns a provider of runtime implementation for writing the data.
|
String |
getTableName() |
HBaseWriteOptions |
getWriteOptions() |
public HBaseDynamicTableSink(String tableName, HBaseTableSchema hbaseTableSchema, Configuration hbaseConf, HBaseWriteOptions writeOptions, String nullStringLiteral)
public DynamicTableSink.SinkRuntimeProvider getSinkRuntimeProvider(DynamicTableSink.Context context)
DynamicTableSink
There might exist different interfaces for runtime implementation which is why DynamicTableSink.SinkRuntimeProvider
serves as the base interface. Concrete DynamicTableSink.SinkRuntimeProvider
interfaces might be located in other Flink modules.
Independent of the provider interface, the table runtime expects that a sink
implementation accepts internal data structures (see RowData
for more information).
The given DynamicTableSink.Context
offers utilities by the planner for creating runtime
implementation with minimal dependencies to internal data structures.
See org.apache.flink.table.connector.sink.SinkFunctionProvider
in flink-table-api-java-bridge
.
getSinkRuntimeProvider
in interface DynamicTableSink
ParallelismProvider
public ChangelogMode getChangelogMode(ChangelogMode requestedMode)
DynamicTableSink
The planner can make suggestions but the sink has the final decision what it requires. If
the planner does not support this mode, it will throw an error. For example, the sink can
return that it only supports ChangelogMode.insertOnly()
.
getChangelogMode
in interface DynamicTableSink
requestedMode
- expected set of changes by the current planpublic DynamicTableSink copy()
DynamicTableSink
copy
in interface DynamicTableSink
public String asSummaryString()
DynamicTableSink
asSummaryString
in interface DynamicTableSink
@VisibleForTesting public HBaseTableSchema getHBaseTableSchema()
@VisibleForTesting public HBaseWriteOptions getWriteOptions()
@VisibleForTesting public Configuration getConfiguration()
@VisibleForTesting public String getTableName()
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.