gpt4 book ai didi

apache-kafka - Debezium, Kafka 连接 : is there a way to send only payload and not schema?

转载 作者:行者123 更新时间:2023-12-04 08:16:24 26 4
gpt4 key购买 nike

我在 kafka connect 中有一个发件箱 postgresql 表和 debezium 连接器,它根据添加到表中的行创建 kafka 消息。

我面临的问题是消息格式。这是创建的消息值:

{
"schema": {
"type": "string",
"optional": true,
"name": "io.debezium.data.Json",
"version": 1
},
"payload": "{\"foo\": \"bar\"}"
}

但是(因为消费者)我需要消息只包含有效负载,如下所示:

{
"\"foo\": \"bar\""
}

这是我的 kafka 连接器配置的一部分:

"transforms": "outbox",
"transforms.outbox.type": "io.debezium.transforms.outbox.EventRouter",
"transforms.outbox.route.topic.replacement": "${routedByValue}",
"transforms.outbox.route.by.field": "aggregate_type",
"transforms.outbox.table.field.event.payload.id": "aggregate_id",
"transforms.outbox.table.fields.additional.placement": "payload_type:header:__TypeId__"

有没有办法在不创建自定义转换器的情况下实现这一点?

最佳答案

看起来您正在使用 org.apache.kafka.connect.json.JsonConverterschemas.enable=true 作为您的值转换器。当您执行此操作时,它会将架构与消息中的有效负载一起嵌入。

如果您设置 value.converter.schemas.enable=false,您应该只获取消息中的负载。

引用:Kafka Connect: Converters and Serialization Explained — JSON and Schemas

关于apache-kafka - Debezium, Kafka 连接 : is there a way to send only payload and not schema?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65682694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com