麒麟v10 上部署 TiDB v5.1.2 生产环境优化实践
541
2023-05-21
浅谈数据库同步
通常,我们会在两到多个数据库之间持续如下类型的同步:
插入同步(Insert Synchronization)更新同步(Update Synchronization)删除同步(Drop Synchronization)混合同步(Mixed Synchronization)
数据库插入同步
如果目标表中并不具有与源表相同主键值的适当记录,那么源表需要将新的记录自动传输到目标处。也就是说:在数据库完成同步过程后,那些缺少的记录将被插入到目标表的对应位置。
下图展示了数据库插入同步的具体过程:
数据库更新同步
当源数据库发生更改时,我们必须确保在目标数据库中执行适当的更改。显然,在同步之前,我们需要先比较两个数据库的记录值,然后在目标表处替换需要更改的记录,并在两个表之间建立合适的标识,以标记更新数据库的操作已完成。
下图展示了数据库更新同步的具体过程:
数据库删除同步
如果某些数据记录已经从源数据库中被删除,那么其对应的记录也需要及时从目标数据库中被移除。也就是说,通过检查“删除同步选项(Drop-sync option)”,那些“滞留”在目标数据库中的多余记录会被及时删除掉,以保障源数据库与目标数据库的存储一致性。
下图展示了数据库删除同步的具体过程:
数据库混合同步
其实在实际应用中,上述三种同步操作从来不是孤立地存在着。为了保持两个数据库的相关性,我们必须在同一套操作中,对目标数据库的对应行/列“打出”添加、更新、以及删除的“组合拳”。
下图展示了数据库混合同步的具体过程:
原标题:What Is Database Synchronization?,作者: Dmitry Narizhnykh
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。