如何在 Kafka Connect 中转换超过 1 个字段?
How to transform more than 1 field in Kafka Connect?
我正在使用 Kafka Connect Sink 配置从主题获取数据并保存到 Oracle 数据库。像冠军一样工作,我正在对通过 Avro 模式传入的时间戳列进行转换,然后转换为 Oracle 时间戳列。
"transforms": "TimestampConverter",
"transforms.TimestampConverter.type": "org.apache.kafka.connect.transforms.TimestampConverter$Value",
"transforms.TimestampConverter.format": "mm/dd/yyyy HH:mm:ss",
"transforms.TimestampConverter.target.type": "Timestamp",
"transforms.TimestampConverter.field": "created_ts"
但是,我不知道如何在多个时间戳上执行此操作。也就是说,除了created_ts,我还有一个updated_ts需要改造。
我试过这个:
"transforms.TimestampConverter.field": "created_ts, updated_ts"
不起作用,我也不能为另一个字段重复整个块,因为连接只允许 1 个同名条目。
最后,我尝试了这个:
"transforms.TimestampConverter.field.1": "created_ts",
"transforms.TimestampConverter.field.2": "updated_ts"
您将添加 2 个转换
"transforms": "CreatedConverter,UpdatedConverter",
"transforms.CreatedConverter.type": "org.apache.kafka.connect.transforms.TimestampConverter$Value"
"transforms.CreatedConverter.field": "created_ts",
...
"transforms.UpdatedConverter.type": "org.apache.kafka.connect.transforms.TimestampConverter$Value"
"transforms.UpdatedConverter.field": "updated_ts"
...
我正在使用 Kafka Connect Sink 配置从主题获取数据并保存到 Oracle 数据库。像冠军一样工作,我正在对通过 Avro 模式传入的时间戳列进行转换,然后转换为 Oracle 时间戳列。
"transforms": "TimestampConverter",
"transforms.TimestampConverter.type": "org.apache.kafka.connect.transforms.TimestampConverter$Value",
"transforms.TimestampConverter.format": "mm/dd/yyyy HH:mm:ss",
"transforms.TimestampConverter.target.type": "Timestamp",
"transforms.TimestampConverter.field": "created_ts"
但是,我不知道如何在多个时间戳上执行此操作。也就是说,除了created_ts,我还有一个updated_ts需要改造。
我试过这个:
"transforms.TimestampConverter.field": "created_ts, updated_ts"
不起作用,我也不能为另一个字段重复整个块,因为连接只允许 1 个同名条目。
最后,我尝试了这个:
"transforms.TimestampConverter.field.1": "created_ts",
"transforms.TimestampConverter.field.2": "updated_ts"
您将添加 2 个转换
"transforms": "CreatedConverter,UpdatedConverter",
"transforms.CreatedConverter.type": "org.apache.kafka.connect.transforms.TimestampConverter$Value"
"transforms.CreatedConverter.field": "created_ts",
...
"transforms.UpdatedConverter.type": "org.apache.kafka.connect.transforms.TimestampConverter$Value"
"transforms.UpdatedConverter.field": "updated_ts"
...