Skip to content

[Feature][Connector] Implement multi-table sink support for connectors #10426

@davidzollo

Description

@davidzollo

Description

Based on the tracking issue #5652 and codebase analysis, many sink connectors still lack support for the SupportMultiTableSink interface. We are looking for contributors to help implement this feature for the remaining connectors.

Implementing SupportMultiTableSink allows the connector to handle multiple tables in a single sink instance, which is crucial for database synchronization scenarios (e.g., CDC).

Connectors to be implemented

Type Connector Contributer Status PR
Sink AmazonDynamodb @Best2Two Doing
Sink Cassandra Todo
Sink DingTalk Todo
Sink Feishu Todo
Sink GoogleFirestore Todo
Sink IoTDB Todo
Sink Neo4j Todo
Sink Pulsar @Muktha9491 Doing
Sink RabbitMQ Todo
Sink Rocketmq Todo
Sink S3Redshift Todo
Sink SelectDBCloud Todo
Sink Sentry Todo
Sink Slack Todo
Sink Socket @AshharAhmadKhan Doing
Sink Tablestore Todo
Sink Kafka @misi1987107 Doing #10154

How to Contribute

  1. Pick a connector: Choose one from the list above.
  2. Claim the task: Comment on this issue (e.g., "I would like to work on AmazonDynamodb").
  3. Implement:
    • Modify the Sink class to implement the org.apache.seatunnel.api.sink.SupportMultiTableSink interface.
    • Update the SinkFactory to handle CatalogTables correctly.
    • Ensure tables_configs or equivalent logic is handled if necessary (though Sink usually relies on the upstream CatalogTable).
  4. Reference:
    • You can refer to the implementation of JdbcSink or ElasticsearchSink.
  5. Submit PR: Submit a Pull Request and link it to this issue.

Thank you for your contribution!
Please leave a message if you‘d like to implement the multi - table sink feature for any connector.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions