有没有办法在 Kafka Connect 中不编写自定义 SMT 的情况下按固定数字增加特定字段?

问题描述 投票:0回答:1

假设我有一个如下所示的表“student”,并使用 Debezium MySQL 源连接器和 JDBC 接收器连接器。

id class_id 名字 年龄
1 1 “爱丽丝” 15
2 1 “鲍勃” 16
3 2 “查理” 15

当我对该表进行 CDC 操作时,我只想将 'id' 和 'class_id' 列增加 10 亿。

CDC(变更数据捕获)的高级架构图如下所示。

DB1(MySQL) -> MySQL 源连接器(Debezium) -> Kafka -> (Unwrap SMT) -> (RegexRouter SMT) -> JDBC 接收器连接器 -> (?) -> DB2(MySQL)

  • Unwrap SMT 用于转换 Debezium 更改事件格式以与 JDBC 接收器连接器兼容
  • RegexRouter SMT 用于将主题名称更改为我希望它同步的目标表
  • 我只是想在我想要的特定字段(即列)上放置特定的 SMT 以增加 10 亿。

是否需要将任何开箱即用的 SMT 放置在“(?)”部件上来实现它,或者我应该只实现自定义 SMT?

apache-kafka apache-kafka-connect debezium
1个回答
0
投票

您可以在每个消费者本身中执行此操作。或者使用 ksqlDB。否则,如果您需要在写入 Kafka 之前对与内置转换不匹配的数据进行操作,您将需要自己的

© www.soinside.com 2019 - 2024. All rights reserved.