跨数据中心异构数据库数据同步方法技术

技术编号:39500935 阅读:9 留言:0更新日期:2023-11-24 11:31
本发明专利技术公开了一种跨数据中心异构数据库数据同步方法

【技术实现步骤摘要】
跨数据中心异构数据库数据同步方法、系统及相关设备


[0001]本专利技术涉及数据传输
,具体涉及一种跨数据中心异构数据库数据同步方法

系统及相关设备


技术介绍

[0002]随着计算机业务的发展,以及分布式和微服务技术的广泛使用,为避免单个数据库出现性能瓶颈,通常会采用对数据库进行分库分表的方案,即通过多套数据库来解决

采用分库分表后使得数据库的性能问题得以解决,然而也带来了其他问题

一方面,在拆分之前,可以通过
SQLjoin
完成系统中许多列表和详细信息页面所需的数据,但在拆分之后,数据分布在不同的数据库之中,跨库
SQLjoin
处理起来更加麻烦

此时常用的解决方案之一是数据冗余,即将需要查询的数据在多个库均属复制,通过冗余保存实现在库内
SQLjoin。
另一方面,为了避免拆分后的数据库不会再次因时间推移数据量增加再次达到数据库性能的瓶颈,常常会把历史数据转移并单独存放在一个历史备份库,该历史备份库存只提供对历史数据的查询

[0003]并且,应用系统为了避免单数据中心面临的自然灾害

人为攻击

偶然事故等风险,通常会在多数据中心
(DataCenter)
均部署,以提高业务连续性

健壮性以及数据的可靠性和可用性

为保证数据在多个数据中心之间的可靠性和可用性,还需要在多数据中心之间建立数据备份

同步机制,保证多数据中心的数据一致性

[0004]为解决上述问题,需要对异构数据库之间的数据进行同步,申请公布号为
CN110209728A
的专利公开了一种分布式异构数据库同步方法

电子设备及存储介质,申请公布号为
CN114428820A
的专利公开了分布式数据实时同步的方法

系统和数据同步设备,以上技术均可实现分布式异构数据库之间的数据同步,但并不支持位于不同数据中心的数据库之间的数据同步

此外,现有技术都只针对数据库类型不同的异构数据库进行数据同步时出现的问题进行了解决,但并未解决数据库对象不同的异构数据库进行数据同步时出现的问题

[0005]综上所述,现有分布式异构数据库同步技术主要面临着如下问题:
[0006]1.
跨数据中心的数据库之间同步难

[0007]2.
数据库对象不同的数据库之间同步难


技术实现思路

[0008]针对上述现有技术,本专利技术提供一种跨数据中心异构数据库数据同步方法

系统及相关设备,针对位于不同数据中心的数据库对象不同的数据库提供数据同步服务

[0009]为实现上述目的,本专利技术通过以下技术方案得以实现:
[0010]第一方面,提供一种跨数据中心异构数据库数据同步方法,包括以下步骤:
[0011]从同步配置库中获取同步配置信息;
[0012]根据所述同步配置信息选定第一数据库作为导出数据库,第二数据库作为导入数
据库;
[0013]所述第一数据库和所述第二数据库连接
Netty
建立数据传输通道;
[0014]汇总第一数据库的数据库操作记录生成数据传输文件;
[0015]通过所述
Netty
远程传输将所述数据传输文件从所述第一数据库所属中心传输至所述第二数据库所属中心;
[0016]将所述数据传输文件数据写入所述第二数据库;
[0017]具体地,所述第一数据库在第一数据中心,第二数据库在第二数据中心,数据中心的数据库既可作为导出数据库,也可作为导入数据库

[0018]具体地,所述同步配置信息包括但不限于导出数据库所属中心

导出数据库信息

导出数据库类型

导出数据库表名

导入数据库所属中心

导入数据库信息

导入数据库类型

导入数据库表名

同步周期

[0019]进一步地,所述同步周期为重复执行以下步骤的循环周期:
[0020]汇总第一数据库的数据库操作记录生成数据传输文件;
[0021]通过所述
Netty
远程传输将所述数据传输文件从所述第一数据库所属中心传输至所述第二数据库所属中心;
[0022]将所述数据传输文件写入所述第二数据库

[0023]进一步地,所述汇总第一数据库的数据库操作记录生成数据传输文件步骤包括以下步骤:
[0024]监测第一数据库的数据库对象;
[0025]记录所述第一数据库的数据库操作;
[0026]生成数据传输文件

[0027]其中,所述记录所述第一数据库的数据库操作的记录项包括但不限于:流水号

时间戳

操作类型

表名

表主键值

[0028]进一步地,所述通过所述
Netty
远程传输将所述数据传输文件从所述第一数据库所属中心传输至所述第二数据库所属中心步骤之前还包括对所述数据传输文件进行数据校验

[0029]第二方面,提供一种跨数据中心异构数据库数据同步系统,包括至少一个数据中心

同步配置模块

数据导出模块

数据传输模块

数据导入模块

[0030]具体地,所述数据中心中设置了至少一个数据库,所述同步配置模块

数据导出模块

数据导入模块部署在所述数据中心上;
[0031]所述同步配置模块包括用户操作终端和同步配置库,用于供用户配置同步配置信息;
[0032]所述数据导出模块,用于记录所在数据库的数据库操作生成数据传输文件;
[0033]所述数据传输模块采用
Netty
远程传输,用于将导出数据库的数据传输文件传输到导入数据库;
[0034]所述数据导入模块,用于接收和导入所述数据传输文件

[0035]进一步地,所述跨数据中心异构数据库数据同步系统还包括数据校验模块,用于对所述数据传输文件进行校验

[0036]第三方面,提供一种服务器,包括存储器

处理器及存储在存储器上并可在处理器
上运行的计算机程序,其特征在于,处理器执行计算机程序时实现如前述第一方面所述跨数据中心异构数据库数据同步方法
...

【技术保护点】

【技术特征摘要】
1.
一种跨数据中心异构数据库数据同步方法,其特征在于,包括以下步骤:从同步配置库中获取同步配置信息;根据所述同步配置信息选定第一数据库作为导出数据库,第二数据库作为导入数据库;所述第一数据库和所述第二数据库连接
Netty
建立数据传输通道;汇总第一数据库的数据库操作记录生成数据传输文件;通过所述
Netty
远程传输将所述数据传输文件从所述第一数据库所属中心传输至所述第二数据库所属中心;将所述数据传输文件数据写入所述第二数据库;其中,所述第一数据库在第一数据中心,第二数据库在第二数据中心
。2.
根据权利要求1所述的方法,其特征在于,所述同步配置信息包括但不限于导出数据库所属中心

导出数据库信息

导出数据库类型

导出数据库表名

导入数据库所属中心

导入数据库信息

导入数据库类型

导入数据库表名

同步周期
。3.
根据权利要求2所述的方法,其特征在于,所述同步周期为重复执行以下步骤的循环周期:汇总第一数据库的数据库操作记录生成数据传输文件;通过所述
Netty
远程传输将所述数据传输文件从所述第一数据库所属中心传输至所述第二数据库所属中心;将所述数据传输文件写入所述第二数据库
。4.
根据权利要求1所述的方法,其特征在于,所述汇总第一数据库的数据库操作记录生成数据传输文件步骤包括以下步骤:监测第一数据库的数据库对象;记录所述第一数据库的数据库操作;生成数据传输文件
。5.
根据权利要求4所述的方法,其特征在于,所述记录所述第一数据库的数据库操作的记录项...

【专利技术属性】
技术研发人员:何罡平姜家源宁高乐
申请(专利权)人:深圳市雁联计算系统有限公司
类型:发明
国别省市:

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

1