You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Oracle GoldenGate for Kafka更新记录时JSON仅含更新列与主键列问题

解决Oracle GoldenGate Big Data for Kafka更新时JSON仅含更新列和主键的问题

我之前也碰到过一模一样的情况——OGG for Kafka默认会对更新操作做轻量化优化,只把被修改的列主键列放到after字段里,目的是减少Kafka消息的体积、提升传输效率。如果你的下游系统需要完整的行数据,只需要调整一下OGG Big Data Adapter的配置就能解决:

具体配置步骤

  1. 找到你的Kafka Handler配置文件(一般是类似kafka-handler.properties的文件,存放在OGG的adapter配置目录下)
  2. 在配置文件中添加或修改以下参数:
# 开启更新操作时输出全列数据到after字段
gg.handler.kafka.fullUpdateColumns=true
  1. 重启OGG的Extract进程,让新配置生效

补充说明

  • 如果你还需要before字段也包含完整的行数据,要确保你的Extract配置里已经开启了GETUPDATEBEFORES,这样OGG才能捕获到更新前的完整记录
  • 默认的轻量化输出在大多数流式处理场景下是合理的,但如果下游需要基于完整行做业务逻辑,开启全列输出就很有必要

调整后,更新操作生成的JSON的after部分就会包含表中所有列,而不是只有更新列和主键了。

内容的提问来源于stack exchange,提问作者Francis John

火山引擎 最新活动