新老系统的数据同步方法技术方案

技术编号:39665739 阅读:9 留言:0更新日期:2023-12-11 18:29
本发明专利技术涉及数据处理领域,公开了一种新老系统的数据同步方法

【技术实现步骤摘要】
新老系统的数据同步方法、设备及存储介质


[0001]本专利技术涉及数据处理领域,尤其涉及一种新老系统的数据同步方法

设备及存储介质


技术介绍

[0002]随着业务发展,互联网公司的老系统往往需要重构,重构过程中即要保障老系统的稳定,也要保障新系统的快速重构,并完成平稳过渡

系统重构是指对现有软件系统进行结构性变化和改造的过程

它旨在改善软件系统的质量

可维护性

可扩展性和性能

[0003]当前大部分互联网公司的做法是同步开展新老系统的维护,该方法无法保同时障老系统稳定以及新系统平稳过渡


技术实现思路

[0004]本专利技术的主要目的在于解决在系统重构时,无法保同时障老系统稳定以及新系统平稳过渡的技术问题

[0005]本专利技术第一方面提供了一种新老系统的数据同步方法,,所述新老系统的数据同步方法包括:
[0006]监听到第一软件系统产生第一数据操作时,生成所述第一数据操作对应的第一
binlog
日志;
[0007]根据第二软件系统对应的第二预设格式,将所述第一
binlog
日志转换为所述第二预设格式对应的第二数据库语句;
[0008]调用所述第二软件系统对应的第二数据库,执行所述第二数据库语句;
[0009]确定所述第二数据库语句是否执行成功;
[0010]若所述第二数据库语句执行成功,判定新老系统数据同步成功

[0011]可选的,在本专利技术第一方面的第一种实现方式中,所述调用所述第二软件系统对应的第二数据库,执行所述第二数据库语句的步骤包括:
[0012]确定所述第二数据库语句的语句类型;
[0013]若所述语句类型为
insert
操作或者
update
操作,将所述第一
binlog
日志按照所述第二预设格式生成所述第二数据库可以执行的所述第二数据库语句,并调用所述第二软件系统对应的所述第二数据库,执行所述第二数据库语句

[0014]可选的,在本专利技术第一方面的第二种实现方式中,所述确定确定所述第二数据库语句的语句类型的步骤包括:
[0015]根据所述第二数据库语句携带的数据表,判断所述第二数据库是否存在与所述数据表对应的目标数据表;
[0016]若所述第二数据库不存在与所述数据表对应的所述目标数据表,判定所述语句类型为所述
insert
操作;
[0017]若所述第二数据库存在与所述数据表对应的所述目标数据表,判断所述数据表与
所述目标数据表是否内容一致;
[0018]若所述数据表与所述目标数据表是内容一致,判定所述语句类型为所述
update
操作

[0019]可选的,在本专利技术第一方面的第三种实现方式中,所述若所述第二数据库存在与所述数据表对应的所述目标数据表,判断所述数据表与所述目标数据表是否内容一致的步骤之后,所述方法还包括:
[0020]若所述数据表与所述目标数据表非内容一致,确定是否存储有所述第二数据库语句对应的缓存日志;
[0021]若存储有所述第二数据库语句对应的所述缓存日志,判定成功响应所述第一数据操作

[0022]可选的,在本专利技术第一方面的第四种实现方式中,所述确定所述第一数据库语句的语句类型的步骤之后,所述方法还包括:
[0023]若所述语句类型为删除操作,结束当前进程,判定成功响应所述第一数据操作

[0024]可选的,在本专利技术第一方面的第五种实现方式中,所述确定所述第二数据库语句是否执行成功的步骤之后,所述方法还包括:
[0025]若所述第二数据库语句执行失败,执行原子性回滚操作,并输出所述第二数据库语句执行失败的提示信息

[0026]可选的,在本专利技术第一方面的第六种实现方式中,所述若所述第一数据库语句执行成功,判定新老系统数据同步成功的步骤之后,所述方法还包括:
[0027]监听到所述第二软件系统产生第二数据操作时,生成所述第二数据操作对应的第二
binlog
日志;
[0028]根据所述第一软件系统对应的第一预设格式,将所述第二
binlog
日志转换为所述第一预设格式对应的第一数据库语句;
[0029]调用所述第一软件系统对应的第一数据库,执行所述第一数据库语句;
[0030]确定所述第一数据库语句是否执行成功;
[0031]若所述第一数据库语句执行成功,判定新老系统数据同步成功

[0032]可选的,在本专利技术第一方面的第七种实现方式中,所述监听到第一软件系统产生第一数据操作时,生成所述第一数据操作对应的第一
binlog
日志的步骤之前,所述方法还包括:
[0033]根据所述第一数据库与所述第二数据库,获取双向同步配置表方向以及获取双向同步配置信息;
[0034]根据所述双向同步配置表方向以及所述双向同步配置信息,监听所述第一软件系统是否产生第一数据操作,并根据所述双向同步配置表方向以及所述双向同步配置信息,监听所述第二软件系统是否产生第二数据操作

[0035]本专利技术第二方面提供了一种新老系统的数据同步设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述新老系统的数据同步设备执行上述的新老系统的数据同步方法

[0036]本专利技术的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中
存储有指令,当其在计算机上运行时,使得计算机执行上述的新老系统的数据同步方法

[0037]在本专利技术实施例中,监听到第一软件系统产生第一数据操作时,生成所述第一数据操作对应的第一
binlog
日志;根据第二软件系统对应的第二预设格式,将所述第一
binlog
日志转换为所述第二预设格式对应的第二数据库语句;调用所述第二软件系统对应的第二数据库,执行所述第二数据库语句;确定所述第二数据库语句是否执行成功;若所述第二数据库语句执行成功,判定新老系统数据同步成功

新老系统的数据同步设备通过监听和生成对应的
binlog
日志,以及将
binlog
日志转换为预设格式对应的数据库语句,确保了在第一软件系统产生的数据操作能够准确地在第二软件系统中执行

这样可以确保新老系统之间的数据同步准确无误

通过执行所述第二数据库语句,并确定其是否执行成功,可以验证数据在第二软件系统中的完整性

若本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种新老系统的数据同步方法,其特征在于,所述新老系统的数据同步方法包括:监听到第一软件系统产生第一数据操作时,生成所述第一数据操作对应的第一
binlog
日志;根据第二软件系统对应的第二预设格式,将所述第一
binlog
日志转换为所述第二预设格式对应的第二数据库语句;调用所述第二软件系统对应的第二数据库,执行所述第二数据库语句;确定所述第二数据库语句是否执行成功;若所述第二数据库语句执行成功,判定新老系统数据同步成功
。2.
根据权利要求1所述的新老系统的数据同步方法,其特征在于,所述调用所述第二软件系统对应的第二数据库,执行所述第二数据库语句的步骤包括:确定所述第二数据库语句的语句类型;若所述语句类型为
insert
操作或者
update
操作,将所述第一
binlog
日志按照所述第二预设格式生成所述第二数据库可以执行的所述第二数据库语句,并调用所述第二软件系统对应的所述第二数据库,执行所述第二数据库语句
。3.
根据权利要求2所述的新老系统的数据同步方法,其特征在于,所述确定确定所述第二数据库语句的语句类型的步骤包括:根据所述第二数据库语句携带的数据表,判断所述第二数据库是否存在与所述数据表对应的目标数据表;若所述第二数据库不存在与所述数据表对应的所述目标数据表,判定所述语句类型为所述
insert
操作;若所述第二数据库存在与所述数据表对应的所述目标数据表,判断所述数据表与所述目标数据表是否内容一致;若所述数据表与所述目标数据表是内容一致,判定所述语句类型为所述
update
操作
。4.
根据权利要求3所述的新老系统的数据同步方法,其特征在于,所述若所述第二数据库存在与所述数据表对应的所述目标数据表,判断所述数据表与所述目标数据表是否内容一致的步骤之后,所述方法还包括:若所述数据表与所述目标数据表非内容一致,确定是否存储有所述第二数据库语句对应的缓存日志;若存储有所述第二数据库语句对应的所述缓存日志,判定成功响应所述第一数据操作
。5.
根据权利要求2所述的新老系统的数据同步方法,其特征在于,所述确定所述...

【专利技术属性】
技术研发人员:闫超黄德安陈子文
申请(专利权)人:深圳麦风科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1