consumer 消费数据条数不一致

本文探讨了在使用RTsync同步db2到gbase时出现的数据不一致问题,主要表现为gbase中多出500多条数据,原因是联合主键字段包含空值。解决方法是调整consumer参数以正确处理空值。另外,还分析了GBase8a消费者在消费Kafka消息时遇到的超长字段问题,导致消费失败。为了解决这个问题,可以通过设置特定参数来自动截断超长字段。
摘要由CSDN通过智能技术生成
问题现象
使用 RTsync 同步 db2 中的一张表与 gbase 中的表数据条数不一致,gbase 中多了
500 多条数据。
解决方法:
通过比对发现是 gbase 中没有正确删除部分数据导致,对异常部分的数据进行分析
发现没有删掉的数据都是联合主键中其中一个字段包含了空值导致。
rtsync 生产的消息,isColValNull 永远是 false,所以 consumer 按照 not null 来
处理,导致问题现象。设置 consumer 参数_t_gcluster_kafka_null_transform=1,
这样 consumer 会判断 kafka 消息的数据如果是 A="",会自动认为 A is null,然后
按照 null 的逻辑来处理。
consumer 消费 kafka 数据时超长字段无法正常消费
问题现象
在 GBase8a consumer 组件消费 kafka 消息时,由于不明原因出现消息数据源出现
乱码,其长度超出 8a 定义的字段长度(数据类型为 varchar 类型字段),导致该
数据在消费过程中由于字段长度超长无法被 8a 正常消费入库,会停止消费并报相
应的错误信息
解决方法:
设置_t_kafka_varchar_auto_truncate=1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值