canal集成kafka之后,每次mysql变更数据,会传递多条数据至kafka

canal集成kafka之后,每次mysql变更数据,会传递多条数据至kafka,但这几条数据除一些不重要的字段如起止时间之外都是一致的,我想知道为何会发送多条数据,如果可以的话,能不能只发一条

请问找到问题原因了吗

 

我的情况是:

canal直接投递到kafka出现了消息重复的情况,一个binlog记录被生产了两次,而且两次的id不是连续的

你可以看下,是不是配置了两条队列

这种是正常情况,因为你一条sql修改了多条数据,此时就产生了多条bin-log日志。而canal监控的是是bin-log日志。所以自动就产生了多条消息数据