在使用canal-adapter的时候,发现adapter同步数据库时,在代码中是使用的手动提交事务的方式,这样写是出于哪方面的考虑?与自动提交相比有什么好处吗?
原提问者GitHub用户xuej2s
控制一个batch 的数据尽量在一个事务内提交,若失败则整批失败,而不是部分,特别是针对目标端非merge 的情况,能极大减少人工介入(主键冲突)的几率。
重复执行没有什么影响 的结论是基于sql 数据是通过幂等(merge)的方式执行的,你的这个场景可以使用自动提交
目标端是否可以执行Merge语句,有很多场景,大部分关系型数据库都是支持的,但是前提是表有主键/唯一键
原回答者GitHub用户wingerx
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。