我们将表数据从 db2 发送到 iidr-cdc 到 kafka 。当您在 kafka-avro-console-consumer 中看到消息时,我们遇到了 Kafka 主题中的数据格式问题。
对于定义为 DEFAULT NULL 的 Db2 列,如果它们的值为 null,它在 kafka 主题中看起来很好 (as key:value) 。但是当值不为 null 时,它被包装在字典中。
如果列是示例输出 -
"Random_key": {
"int": 9088245671
}
在这里,该条目的键是列的数据类型,值是列值。--> 这种输出格式不适合我们的应用
如果该值实际上是 null 并且列定义为 DEFAULT NULL,它看起来很好。果然不出所料——
"Random_key": null
我们如何在 IIDR CDC 或 KAFKA 端进行更改以始终以 key:value 格式显示消息,就像这样 - (即使 DEFAULT NULL 列在列中包含一些值)
"Random_key": 9088245671
谢谢!