Interface DataSourceDialect<C extends SourceConfig>
-
- Type Parameters:
C- The source config of data source.
- All Superinterfaces:
AutoCloseable,Closeable,Serializable
- All Known Subinterfaces:
JdbcDataSourceDialect
- All Known Implementing Classes:
Db2Dialect,MongoDBDialect,OracleDialect,PostgresDialect,SqlServerDialect
@Experimental public interface DataSourceDialect<C extends SourceConfig> extends Serializable, Closeable
The dialect of data source.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default voidclose()ChunkSplittercreateChunkSplitter(C sourceConfig)Deprecated.ChunkSplittercreateChunkSplitter(C sourceConfig, ChunkSplitterState chunkSplitterState)FetchTask<SourceSplitBase>createFetchTask(SourceSplitBase sourceSplitBase)The fetch task used to fetch data of a snapshot split or stream split.FetchTask.ContextcreateFetchTaskContext(C sourceConfig)The task context used for fetch task to fetch data from external systems.List<io.debezium.relational.TableId>discoverDataCollections(C sourceConfig)Discovers the list of data collection to capture.Map<io.debezium.relational.TableId,io.debezium.relational.history.TableChanges.TableChange>discoverDataCollectionSchemas(C sourceConfig)Discovers the captured data collections' schema bySourceConfig.default OffsetdisplayCommittedOffset(C sourceConfig)Displays committed offset from the database e.g.OffsetdisplayCurrentOffset(C sourceConfig)Displays current offset from the database e.g.StringgetName()Get the name of dialect.booleanisDataCollectionIdCaseSensitive(C sourceConfig)Check if the CollectionId is case-sensitive or not.booleanisIncludeDataCollection(C sourceConfig, io.debezium.relational.TableId tableId)Check if the tableId is included in SourceConfig.default voidnotifyCheckpointComplete(long checkpointId, Offset offset)We may need the offset corresponding to the checkpointId.
-
-
-
Method Detail
-
getName
String getName()
Get the name of dialect.
-
discoverDataCollections
List<io.debezium.relational.TableId> discoverDataCollections(C sourceConfig)
Discovers the list of data collection to capture.
-
discoverDataCollectionSchemas
Map<io.debezium.relational.TableId,io.debezium.relational.history.TableChanges.TableChange> discoverDataCollectionSchemas(C sourceConfig)
Discovers the captured data collections' schema bySourceConfig.- Parameters:
sourceConfig- a basic source configuration.
-
displayCurrentOffset
Offset displayCurrentOffset(C sourceConfig)
Displays current offset from the database e.g. query Mysql binary logs by querySHOW MASTER STATUS.
-
displayCommittedOffset
default Offset displayCommittedOffset(C sourceConfig)
Displays committed offset from the database e.g. query Postgresql confirmed_lsn
-
isDataCollectionIdCaseSensitive
boolean isDataCollectionIdCaseSensitive(C sourceConfig)
Check if the CollectionId is case-sensitive or not.
-
createChunkSplitter
@Deprecated ChunkSplitter createChunkSplitter(C sourceConfig)
Deprecated.Returns theChunkSplitterwhich used to split collection to splits.
-
createChunkSplitter
ChunkSplitter createChunkSplitter(C sourceConfig, ChunkSplitterState chunkSplitterState)
-
createFetchTask
FetchTask<SourceSplitBase> createFetchTask(SourceSplitBase sourceSplitBase)
The fetch task used to fetch data of a snapshot split or stream split.
-
createFetchTaskContext
FetchTask.Context createFetchTaskContext(C sourceConfig)
The task context used for fetch task to fetch data from external systems.
-
notifyCheckpointComplete
default void notifyCheckpointComplete(long checkpointId, Offset offset) throws ExceptionWe may need the offset corresponding to the checkpointId. For example, we should commit LSN of checkpoint to postgres's slot.- Throws:
Exception
-
isIncludeDataCollection
boolean isIncludeDataCollection(C sourceConfig, io.debezium.relational.TableId tableId)
Check if the tableId is included in SourceConfig.
-
close
default void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
-