CN116010172B - 一种数据同步方法、数据库、数据同步装置和产品 - Google Patents
一种数据同步方法、数据库、数据同步装置和产品 Download PDFInfo
- Publication number
- CN116010172B CN116010172B CN202310172964.3A CN202310172964A CN116010172B CN 116010172 B CN116010172 B CN 116010172B CN 202310172964 A CN202310172964 A CN 202310172964A CN 116010172 B CN116010172 B CN 116010172B
- Authority
- CN
- China
- Prior art keywords
- database
- data
- transaction data
- loop
- mark
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 87
- 230000001360 synchronised effect Effects 0.000 claims abstract description 38
- 230000005540 biological transmission Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 18
- 238000001914 filtration Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 4
- 230000002457 bidirectional effect Effects 0.000 abstract description 18
- 239000003550 marker Substances 0.000 abstract description 16
- 238000010586 diagram Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000008676 import Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 230000036541 health Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据同步方法、数据库、数据同步装置和产品,涉及IT与软件开发技术领域,该方法应用于第一数据库,该方法包括:从第二数据库中拉取事务数据;检测拉取到的事务数据是否包含回环标记,回环标记用于表征:拉取到的事务数据中的业务数据已在第一数据库与第二数据库之间双向同步;在拉取到的事务数据不包含回环标记的情况下,对拉取到的事务数据添加回环标记,并将添加有回环标记的事务数据导入第一数据库。由此,本发明利用第一数据库和第二数据库实现双向数据同步,并且,通过检测拉取到的事务数据是否包含回环标记,以及,在事务数据中添加回环标记后再将其导入到第一数据库,解决了数据回环问题。
Description
技术领域
本发明涉及IT与软件开发技术领域,特别是一种数据同步方法、数据库、数据同步装置和产品。
背景技术
目前,随着互联网应用技术的发展,数据库作为互联网技术领域中的一项重要的基础资源,其稳定性和可靠性对于应用软件的正常运行起到了至关重要的作用。对于重要的应用数据,应用的提供方一般会通过建立多数据中心,提高数据的安全性和数据库资源的利用效率。
一般的多数据中心方案多采用主备方案,其中一个库为主库,负责数据写入,另一个库为备库,负责数据读取。然而,此方案可一定程度提升应用的可靠性,但当主库故障后,需将备库切换为主库,在切换过程中,数据库还是会存在不可用状态,无法执行数据读写功能。另外,备库需消耗与主库同样的机器资源,却不能提供写入服务,资源利用率不高。若采用两个数据库双向同步数据的方案,则容易产生数据回环问题,即两个数据库对同一数据进行循环重复的同步操作。
因此,有必要开发一种数据同步方法、数据库、数据同步装置和产品,以解决传统主备数据库方案可靠性不足,资源利用率不高的问题,并保证数据同步过程的可靠性和稳定性。
发明内容
鉴于上述问题,本发明实施例提供了一种数据同步方法、数据库、数据同步装置和产品,以便克服上述问题或者至少部分地解决上述问题。
本发明实施例的第一方面提供了一种数据同步方法,所述方法应用于第一数据库,所述方法包括:
从第二数据库中拉取事务数据;
检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在所述第一数据库与所述第二数据库之间双向同步;
在拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
可选地,所述方法还包括:
在所述第一数据库中创建mark表;
对所述拉取到的事务数据中添加所述回环标记,包括:
利用所述mark表,在所述拉取到的事务数据的开头和结尾位置添加所述回环标记,所述回环标记表示为mark表变更标记。
可选地,在所述拉取到的事务数据包含所述回环标记的情况下,所述方法还包括:
根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
可选地,根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤,包括:
根据所述第二数据库的配置信息,确定所述第二数据库为主库的情况下,确定继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
根据所述第二数据库的配置信息,确定所述第二数据库为非主库的情况下,确定不执行数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
可选地,所述方法包括:
将所述第一数据库和所述第二数据库中,数据读写频次更高的数据库设置为主库,数据读写频次更低的数据库设置为非主库,并将设置结果存储为所述第一数据库和所述第二数据库的配置信息。
可选地,在对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库之前,所述方法还包括:
将所述拉取到的事务数据进行整合,过滤;
将过滤后的事务数据的数据类型转换为所述第一数据库兼容的数据类型。
可选地,所述方法还包括:
获取由数据读写操作直接生成的候选事务数据,所述候选事务数据待所述第二数据库拉取,以进行所述第二数据库的数据同步。
可选地,所述第一数据库与所述第二数据库共享数据传输服务器的数据传输服务;
所述数据传输服务器提供两个同步通道,分别供所述第一数据库和所述第二数据库获取需要的事务数据以完成数据同步。
本发明实施例的第二方面提供了一种数据库,所述数据库用于执行本发明实施例第一方面所述的数据同步方法。
本发明实施例的第三方面提供了一种数据同步装置,所述装置包括:
拉取模块,用于从第二数据库中拉取事务数据;
检测模块,用于检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在所述第一数据库与所述第二数据库之间双向同步;
导入模块,用于在拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
可选地,所述装置还包括:
确定模块,用于在所述拉取到的事务数据包含所述回环标记的情况下,根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
可选地,所述确定模块,包括:
第一确定子模块,用于根据所述第二数据库的配置信息,确定所述第二数据库为主库的情况下,确定继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
第二确定子模块,用于根据所述第二数据库的配置信息,确定所述第二数据库为非主库的情况下,确定不执行数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
可选地,所述装置还包括:
创建模块,用于在所述第一数据库中创建mark表;
所述导入模块,包括:
标记子模块,用于利用所述mark表,在所述拉取到的事务数据的开头和结尾位置添加所述回环标记,所述回环标记表示为mark表变更标记。
可选地,所述装置包括:
设置模块,用于将所述第一数据库和所述第二数据库中,数据读写频次更高的数据库设置为主库,数据读写频次更低的数据库设置为非主库,并将设置结果存储为所述第一数据库和所述第二数据库的配置信息。
可选地,所述装置还包括:
过滤模块,用于将所述拉取到的事务数据进行整合,过滤;
转换模块,用于将过滤后的事务数据的数据类型转换为所述第一数据库兼容的数据类型。
可选地,所述装置还包括:
获取模块,用于获取由数据读写操作直接生成的候选事务数据,所述候选事务数据待所述第二数据库拉取,以进行所述第二数据库的数据同步。
可选地,所述第一数据库与所述第二数据库共享数据传输服务器的数据传输服务;
所述数据传输服务器提供两个同步通道,分别供所述第一数据库和所述第二数据库获取需要的事务数据以完成数据同步。
本发明实施例第四方面提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现本发明第一方面所述的数据同步方法中的步骤。
本发明实施例第五方面提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现本发明第一方面所述的数据同步方法中的步骤。
本发明实施例第六方面提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现本发明第一方面所述的数据同步方法中的步骤。
本发明实施例提供了一种数据同步方法、数据库、数据同步装置和产品,该方法应用于第一数据库,该方法包括:从第二数据库中拉取事务数据;检测拉取到的事务数据是否包含回环标记,回环标记用于表征:拉取到的事务数据中的业务数据已在第一数据库与第二数据库之间双向同步;在拉取到的事务数据不包含回环标记的情况下,对拉取到的事务数据添加回环标记,并将添加有回环标记的事务数据导入第一数据库。
具体有益效果如下:
1)实现了第一数据库与第二数据库之间的双向同步。本发明实施例将第一数据库和第二数据库作为一对双向同步的数据库,由此实现了,当其中一个数据库发生故障(例如,暂时不支持数据写入),另一数据库仍然可以使用,保证了数据的安全性和稳定性。并且,两个数据库互为备份,同时支持双边的数据写入功能和数据修改功能,极大地提高了机器资源的利用效率。
避免了数据回环问题。本发明实施例通过检测拉取到的事务数据是否包含回环标记,从而避免对已经在第一数据库与第二数据库之间双向同步的事务数据(包含回环标记的事务数据)进行重复的同步操作。并且,本实施例在拉取到的事务数据不包含回环标记的情况下,对拉取到的事务数据添加回环标记,再将其导入第一数据库,从而避免了第二数据库向第一数据库进行数据同步时,对该事务数据重复执行同步操作。由此,本实施例所提出的数据同步方法,解决了数据回环问题,避免对已经同步过的数据重复执行同步操作,提高了数据同步效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据库系统结构示意图;
图2是本发明实施例提供的一种数据同步方法的步骤流程图;
图3是本发明实施例提供的一种回环标记的添加方法示意图;
图4是本发明实施例提供的一种数据同步的过程示意图;
图5是本发明实施例提供的一种数据不一致问题的生成过程示意图;
图6是本发明实施例提供的一种主库与非主库的数据同步示意图;
图7是本发明实施例提供的一种数据库的数据同步过程示意图;
图8是本发明实施例提供的一种数据同步装置的结构示意图;
图9是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”所区别的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”一般表示前后关联对象是一种“或”的关系。
图1示出了本发明实施例可应用的一种数据库系统结构示意图。该数据库系统包括第一数据库和第二数据库,如图1所示,第一数据库和第二数据库这两个双向同步的数据库可以表示为云平台A数据库与云平台B数据库,两个数据库均可以存储各应用产生的业务数据,起到数据读写的功能。并且,两个数据库可以对应于不同的云平台,例如云平台A数据库可以对应于云平台a,云平台B数据库可以对应于云平台b。
两个数据库通过数据传输服务所提供的两条传输通道,互相同步数据,云平台A数据库会同步云平台B数据库中的数据,云平台B数据库会云平台A数据库中的数据,始终保持两个数据库中的数据一致,由此实现了应用写入云平台A数据库的数据会实时同步到云平台B数据库,应用写入云平台B的数据也会实时同步到云平台A,在其中任意一个数据库中均可以查询到云平台a和b的业务数据,保证了两边数据的一致性。
在本实施例中,第一数据库和第二数据库可以为图1中的两个双向同步的数据库中的任意一个数据库,即本实施例中的第一数据库为云平台A数据库时,第二数据库为对应的云平台B数据库,本实施例中的第一数据库为云平台B数据库时,第二数据库为对应的云平台A数据库,第一数据库可以为其中的任意一个数据库,第二数据库则为对应的另一个数据库。需要说明的是,如下本实施例所说明的数据同步方法,是以第一数据库为例进行说明的,主要说明了第一数据库同步第二数据库的数据,由于第一数据库与第二数据库为双向同步的关系,每个实施例中所提出的数据同步方法中的第一数据库与第二数据库互换后,该方案仍然成立。
相关技术中,多数据中心方案多采用主备数据库方案,即,其中一个数据库作为主库,负责数据写入,另一个数据库作为备库,负责数据读取。此方案可一定程度提升应用的可靠性,但当主库故障后,需将备库切换为主库,在切换过程中,应用还是会存在不可用状态,无法向数据库中写入数据。另外,备库需消耗与主库同样的机器资源,却不能提供写入服务,导致该数据库的资源利用率不高。本发明实施例将第一数据库和第二数据库作为一对双向同步的数据库,由此实现了,当其中一个数据库发生故障(例如,暂时不支持数据写入),另一数据库仍然可以使用,应用可以通过访问另一数据库保证该应用正常的服务,从而保证了数据的安全性和稳定性。并且,两个数据库互为备份,同时支持双边的数据写入功能和数据修改功能,极大地提高了机器资源的利用效率。
本发明实施例提供了一种数据同步方法,参照图2,图2为本发明实施例提供的一种数据同步方法的步骤流程图,所述方法应用于第一数据库,如图2所示,所述方法包括:
步骤S101,从第二数据库中拉取事务数据。
事务数据表示用于描述数据库对数据执行增加、删除和修改等操作的数据,通常表示为用户对数据库更新的SQL语句信息。数据库中的事务表示的是一种机制、一个操作序列,其中包含了一组数据库操作命令。事务把所有的命令作为一个整体一起向系统提交或撤销操作请求,即这一组数据库命令要么都执行,要么都不执行,因此事务是一个不可分割的工作逻辑单元。在数据库系统上执行并发操作时,事务是作为最小的控制单元来使用的,特别适用于多用户同时操作的数据库系统。示例性的,向数据库中增加一个文件A,则对应的会产生一条事务数据,用于说明该数据库执行了增加文件A这一操作。
在一种实施例中,可以通过解析第二数据库的binlog文件,获取到所述第二数据库的事务数据。binlog是一个二进制格式的文件,用于记录用户对数据库更新的SQL语句信息,更改数据库表和更改内容的SQL语句都会记录到binlog里,但是对库表等内容的查询的SQL语句不会记录。当有数据写入到数据库时,还会同时把更新的SQL语句写入到对应的binlog文件里。
并且,每一次对第二数据库的binlog文件进行解析,所获得的一条或多条事务数据,为该距离上一次解析binlog文件后,新增的事务数据。例如,每个一个固定时间段,对第二数据库的binlog文件进行一次解析,以获取事务数据。设该时间段为1个小时,则对应的,所获取到的一条或多条事务数据,为这1个小时内新增的事务数据。
步骤S102,检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在所述第一数据库与所述第二数据库之间双向同步。
在本实施例中,若该事务数据中包含回环标记,表示拉取到的这一条事务数据中的业务数据已经在第一数据库和第二数据库之间执行过同步操作了,即在第一数据库中已经存在相同的业务数据了。示例性的,从第二数据库中拉取到的一条事务数据描述为“在数据库中增加了文件A”,而检测到该条事务数据包含回环标记,表示该事务数据为第一数据库和第二数据库之间同步产生的事务数据,是第二数据库从第一数据库中同步得到的事务数据,可以得出,第一数据库中已经包含文件A了,该条事务数据不需要再次进行同步。
若该条事务数据不包含回环标记,表示该事务数据不是第一数据库与第二数据库之间进行双向同步产生的事务数据,而是第一数据库所对应的云平台的应用直接写入第一数据库的数据。因此,第一数据库中并不包含该事务数据中的业务数据,需要导入不包含回环标记的事务数据。
在一种实施例中,在执行步骤S103:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库之前,所述方法还包括:
将所述拉取到的事务数据进行整合,过滤;
将过滤后的事务数据的数据类型转换为所述第一数据库兼容的数据类型。
在本实施例中,由于第一数据库与第二数据库可以对应不同的云平台,而不同的云平台,例如云平台a写入的数据的格式与云平台b写入数据库的数据的格式可能存在差异,导致第一数据库与第二数据库在进行双向数据同步时,不能直接将拉取到的事务数据导入自身的数据库。参照图4,图4示出了一种数据同步的过程示意图,如图4所示,在源数据库向目标数据库同步数据的过程中(第二数据库将自身的增量事务同步给第一数据库),主要经历了4个步骤。拉取步骤对应本实施例的步骤S101和步骤S102,负责拉取第二数据库(源数据库)的事务数据,并将其转化为内部数据格式,以及检测拉取到的事务数据是否包含回环标记。提取步骤负责对拉取到的事务数据进行整合,过滤。转换步骤负责将过滤后的事务数据的数据类型转换为第一数据库(目标数据库)兼容的数据类型。导入步骤对应本实施例中的步骤S103,主要负责将事务数据导入第一数据库(目标数据库),在此不对其进行过多说明。本实施例通过对拉取到的事务数据进行整合,过滤,进一步整合了拉取到的事务数据,过滤掉不需要同步的事务数据,提高数据同步效率,并且通过将过滤后的事务数据的数据类型转换为第一数据库兼容的数据类型,避免了第二数据库中的数据的数据类型与第一数据库不兼容的问题,提高了数据同步的成功率。
步骤S103,在拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
在本实施例中,在检测到拉取的事务数据不包含回环标记后,对该事务数据添加回环标记,然后再将该添加有回环标记的事务数据导入到第一数据库,使得第一数据库根据该事务数据完成对应的数据同步。为该事务数据添加回环标记,从而与第一数据库中的其他事务数据区分开,避免在第二数据库向第一数据库拉取事务数据进行同步时,再次将该事务数据拉取回第二数据库,产生数据回环问题。
在一种实施例中,所述方法还包括:
在所述第一数据库中创建mark表;
对所述拉取到的事务数据中添加所述回环标记,包括:
利用所述mark表,在所述拉取到的事务数据的开头和结尾位置添加所述回环标记,所述回环标记表示为mark表变更标记。
在本实施例中,可以在第一数据库创建mark表,该mark表用于在事务数据中添加mark表变更标记。参照图3,图3示出了一种回环标记的添加方法示意图,如图3所示,在一条业务数据变更事务中,可以在该事务数据的开头和结尾位置添加回环标记,即利用mark表添加mark表变更标记。由此,在数据库拉取到该条事务数据时,可以知道该条事务数据中包括了“mark表变更”这一动作。可以在第一数据库和第二数据库分别创建mark表用于添加mark表变更标记。
数据回环问题是指:在两个数据库的双向同步过程中,若不做任何的处理,应用通过访问第二数据库执行相关的数据变更操作,产生的事务数据(例如:语句信息SQL1)会同步到第一数据库,从而使得,第一数据库执行相同的语句信息SQL1。然而,第一数据库又会将语句信息SQL1同步给第二数据库,使得第二数据库再次执行语句信息SQL1,如此往复,造成无限循环的数据回环问题。
本发明实施例通过从第二数据库中拉取事务数据;检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在所述第一数据库与所述第二数据库之间双向同步;在拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。由此,本发明实施例通过检测拉取到的事务数据是否包含回环标记,从而避免对已经在第一数据库与第二数据库之间双向同步的事务数据(包含回环标记的事务数据)进行重复的同步操作。并且,本实施例在拉取到的事务数据不包含回环标记的情况下,对拉取到的事务数据添加回环标记,再将其导入第一数据库,从而避免了第二数据库向第一数据库进行数据同步时,对该事务数据重复执行同步操作。由此,本实施例所提出的数据同步方法,既实现了两个数据库之间的双向数据同步,还解决了数据回环问题,避免对已经同步过的数据重复执行同步操作。
此外,本实施例还考虑到了在进行双向数据同步时的数据一致问题。数据一致问题是指,在极短的时间内,应用对同一个数据,分别在第一数据库和第二数据库进行了不同的更新操作。由于该更新操作是同时在极短的时间内完成的,第一数据库和第二数据库对该数据的更新操作都还没有同步至对端,造成了该数据在第一数据库和第二数据库上的记录不一致的问题。
图5示出了一种数据不一致问题的生成过程示意图,如图5所示,云平台A数据库(第一数据库)与云平台B数据库(第二数据库)两个数据库之间进行数据的双向同步。图5中的箭头为时间轴,表示时间顺序关系。在t0和t1两个距离很近的时间点里,应用在t0时刻修改了云平台A数据库中的表T的记录R,将R的值更改为V0;应用在t1时刻修改了云平台B数据库中的表T的记录R,将R的值更改为V1。按照上述实施例的数据同步方法,两个数据库之间进行数据的双向同步,在t2时刻,云平台B数据库同步了云平台A数据库的数据,将表T的记录R的值从V1更改为了V0。在t3时刻,云平台A数据库同步了云平台B数据库的数据,将表T的记录R的值从V0更改为了V1。由此,两个数据库即使完成了数据同步,仍然会出现表T的记录R的值不一致的问题。为了解决上述数据不一致的问题,本发明实施例在上述实施例的基础上提出了如下解决方案。
在一种实施例中,在所述拉取到的事务数据包含所述回环标记的情况下,所述方法还包括:
根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
在本实施例中,在检测到拉取到的事务数据不包含回环标记的情况下,即该事务数据表示的是应用产生的业务数据,是还未同步的事务数据,所以可以直接执行后续数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。在检测到拉取到的事务数据包含回环标记的情况下,即该事务数据表示的是第一数据库与第二数据库双向同步得到的事务数据。在此情况下,需要进一步根据第二数据库的配置信息来确定是否继续执行后续数据同步操作。该配置信息可以为相关工作人员预先根据对数据库进行设定的信息。由此,在第一数据库与第二数据库执行过一次双向的数据同步后,可以由第一数据库(或第二数据库)再次对已经同步过的数据(包含回环标记的事务数据)重复执行一次数据同步操作,从而保证了第一数据库与第二数据库的数据是一致的,解决了数据不一致的问题。
在一种实施例中,根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤,包括:
根据所述第二数据库的配置信息,确定所述第二数据库为主库的情况下,确定继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
根据所述第二数据库的配置信息,确定所述第二数据库为非主库的情况下,确定不执行数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
在本实施例中,可以通过在数据库的配置信息,设定第二数据库为主库或非主库。具体的,在确定第二数据库为主库的情况下,第一数据库检测到拉取到的事务数据包含回环标记时,再次将拉取到的包含回环标记的事务数据导入到第一数据库中,完成数据同步操作。对应的,第一数据库为非主库,在第二数据库执行数据同步操作时,若拉取到包含回环标记的事务数据,则直接停止后续数据同步操作,从而实现了第一数据库与第二数据库在完成数据同步后,两个数据库的数据保持一致,即两个数据库(第一数据库与第二数据库)以第一数据库中的数据为准。
在确定第二数据库为非主库的情况下,第一数据库检测到拉取到的事务数据包含回环标记时,直接停止执行后续数据同步操作。对应的,第一数据库为主库,即第二数据库执行数据同步操作时,若拉取到包含回环标记的事务数据,再次将拉取到的包含回环标记的事务数据导入到第二数据库中,完成数据同步操作,从而实现了第一数据库与第二数据库在完成数据同步后,两个数据库的数据保持一致,即两个数据库(第一数据库与第二数据库)以第二数据库中的数据为准。
以图6为一种示例进行说明。参照图6,图6示出了一种主库与非主库的数据同步示意图,如图6所示,云平台A数据库(第一数据库)与云平台B数据库(第二数据库)两个数据库之间进行数据的双向同步,云平台A数据库(第一数据库)为主库,云平台B数据库(第二数据库)为非主库。图6中的箭头为时间轴,表示时间顺序关系。在t0和t1两个距离很近的时间点里,应用在t0时刻修改了云平台A数据库中的表T的记录R的值,将其更改为V0;应用在t1时刻修改了云平台B数据库中的表T的记录R,将R的值更改为V1。两个数据库之间进行数据的双向同步,在t2时刻,云平台B数据库同步了云平台A数据库的数据,将表T的记录R的值从V1更改为了V0。在t3时刻,云平台A数据库同步了云平台B数据库的数据,将表T的记录R的值从V0更改为了V1。
按照上述实施例的数据同步方法,云平台A数据库(第一数据库)为主库,云平台B数据库(第二数据库)为非主库。云平台B数据库从云平台A数据库拉取到带有回环标记的事务数据“将表T的记录R的值从V0更改为了V1”,由于云平台A数据库为主库,所以在t4时刻,云平台B数据库需要再次导入该事务数据,完成同步,将表T的记录R的值从V0又更改为了V1。从而保证了两个数据库中的表T的记录R的最终值均为V1。
由此,本实施例在第一数据库与第二数据库执行过一次双向的数据同步后,可以由第一数据库(或第二数据库)再次对已经同步过的数据(包含回环标记的事务数据)重复执行一次数据同步操作,从而保证了第一数据库与第二数据库的数据是一致的,解决了数据不一致的问题。
在一种实施例中,所述方法包括:
将所述第一数据库和所述第二数据库中,数据读写频次更高的数据库设置为主库,数据读写频次更低的数据库设置为非主库,并将设置结果存储为所述第一数据库和所述第二数据库的配置信息。
在本实施例中,第一数据库与第二数据库的配置信息可以为相关工作人员根据数据库的具体情况设定的。具体的,可以根据数据库的数据读写频次来确定,将第一数据库与第二数据库中,数据读写频次更高的数据库,即承担较多数据读写任务的数据库,确定为主库,将数据读写频次较低的数据库确定为非主库。由此,主库产生的回环数据会同步到非主库,非主库产生的回环数据则不同步到主库,减少同步回环数据的数量,提高数据同步的效率。
需要知道的是,由于第一数据库与第二数据库为双向同步的数据库,两个数据库之间是通过数据传输服务相互联通的。本实施例不仅仅是第一数据库获取第二数据库的事务数据,完成第一数据库的数据同步,还包括了第二数据库获取第一数据库的事务数据,完成第二数据库的数据同步。每个实施例所提出的数据同步方法中的第一数据库与第二数据库互换后,该方案仍然成立。
在一种实施例中,所述方法还包括:
获取由数据读写操作直接生成的候选事务数据,所述候选事务数据待所述第二数据库拉取,以进行所述第二数据库的数据同步。
在本实施例中,在第一数据库中,除了从第二数据库拉取到的事务数据,还存储有数据读写操作直接生成的候选事务数据。该候选事务数据是应用访问该第一数据库,对第一数据库中的数据进行读取、更改或删除等操作所产生的事务数据。如图1所示,第一数据库与第二数据库为双向同步的数据库,该候选事务数据待第二数据库拉取,以进行第二数据库的数据同步操作。
在一种实施例中,所述第一数据库与所述第二数据库共享数据传输服务器的数据传输服务;
所述数据传输服务器提供两个同步通道,分别供所述第一数据库和所述第二数据库获取需要的事务数据以完成数据同步。
在本实施例中,两个数据库(第一数据库与第二数据库)通过数据传输服务所提供的两条传输通道,互相同步数据,第一数据库会同步第二数据库中的数据,第二数据库会同步第一数据库中的数据,两条传输通道同时工作,始终保持两个数据库中的数据一致,由此实现了应用写入第一数据库的数据会实时同步到第二数据库,应用写入第二数据库的数据也会实时同步到第一数据库,保证了两边数据的一致性。
以下通过一个示例,对上述实施例所提出的数据同步方法进行说明。参照图7,图7示出了一种数据库的数据同步过程示意图,即目标数据库同步源数据库的数据过程:目标数据库首先执行拉取步骤,解析binlog文件,拉取得到事务数据。检测拉取到的事务数据中是否包含回环标记(即事务中是否包含mark表变更),若该事务数据不包括回环标记,则说明该事务数据为由应用产生的业务数据,直接执行后续数据同步操作,即按照顺序执行提取、转化和导入步骤,将事务数据导入到目标数据库,完成数据同步。其中,执行导入步骤时,对接收到的事务数据做部分改造,在该条事务数据中添加回环标记(在事务的开头和结尾插入对mark表的变更操作,从而标记该事务数据为数据传输服务产生的同步数据,而非由应用直接对目标数据库操作产生的事务数据)。对事务数据改造完成后,在目标数据库添加了回环标记后,完成数据同步。若该事务数据包括回环标记,则说明该事务数据为数据传输服务产生的回环数据,需要进一步判断源数据库是否为主库。若源数据库为非主库,则忽略该条事务数据,结束本次的数据同步操作。若源数据库为主库,则按照顺序执行提取、转化和导入步骤,将事务数据导入到目标数据库,完成数据同步。通过上述过程,既实现了两个数据库之间的双向数据同步,还解决了数据回环问题和数据不一致的问题,保证了两个数据库的数据的安全性和稳定性,提高了数据同步效率。
示例性的,对于健康码服务系统,在天翼云和阿里云平台同时开通数据库作为健康码服务系统的后台数据库。其中,天翼云数据库作为主库,承担主要的数据读写任务,阿里云数据库作为备库,承担次要数据读写任务。利用数据传输服务建立天翼云数据库和阿里云数据库之间的双向同步。按照上述实施例所提供的数据同步方法,该方案可保证两个平台上的数据库同时提供读写操作,若其中一个数据库发生故障,健康码服务系统依旧能保证正常工作。在保证服务可靠性的同时,也提升了资源的利用率。
本发明实施例的第二方面提供了一种数据库,所述数据库用于执行本发明实施例所述的任一一种数据同步方法。
本发明实施例第三方面提供了一种数据同步装置,参照图8,图8示出了一种数据同步装置的结构示意图,如图8所示,所述装置包括:
拉取模块,用于从第二数据库中拉取事务数据;
检测模块,用于检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在所述第一数据库与所述第二数据库之间双向同步;
导入模块,用于在拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
在一种实施例中,所述装置还包括:
确定模块,用于在所述拉取到的事务数据包含所述回环标记的情况下,根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
在一种实施例中,所述确定模块,包括:
第一确定子模块,用于根据所述第二数据库的配置信息,确定所述第二数据库为主库的情况下,确定继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
第二确定子模块,用于根据所述第二数据库的配置信息,确定所述第二数据库为非主库的情况下,确定不执行数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库。
在一种实施例中,所述装置还包括:
创建模块,用于在所述第一数据库中创建mark表;
所述导入模块,包括:
标记子模块,用于利用所述mark表,在所述拉取到的事务数据的开头和结尾位置添加所述回环标记,所述回环标记表示为mark表变更标记。
在一种实施例中,所述装置包括:
设置模块,用于将所述第一数据库和所述第二数据库中,数据读写频次更高的数据库设置为主库,数据读写频次更低的数据库设置为非主库,并将设置结果存储为所述第一数据库和所述第二数据库的配置信息。
在一种实施例中,所述装置还包括:
过滤模块,用于将所述拉取到的事务数据进行整合,过滤;
转换模块,用于将过滤后的事务数据的数据类型转换为所述第一数据库兼容的数据类型。
在一种实施例中,所述装置还包括:
获取模块,用于获取由数据读写操作直接生成的候选事务数据,所述候选事务数据待所述第二数据库拉取,以进行所述第二数据库的数据同步。
在一种实施例中,所述第一数据库与所述第二数据库共享数据传输服务器的数据传输服务;
所述数据传输服务器提供两个同步通道,分别供所述第一数据库和所述第二数据库获取需要的事务数据以完成数据同步。
本发明实施例还提供了一种电子设备,参照图9,图9是本发明实施例提出的电子设备的结构示意图。如图9所示,电子设备100包括:存储器110和处理器120,存储器110与处理器120之间通过总线通信连接,存储器110中存储有计算机程序,该计算机程序可在处理器120上运行,进而实现本发明实施例公开的一种数据同步方法中的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现本发明实施例公开的数据同步方法中的步骤。
本发明实施例还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现本发明实施例公开的数据同步方法中的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例是参照根据本发明实施例的方法、装置、电子设备和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据同步方法、数据库、数据同步装置和产品,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种数据同步方法,其特征在于,所述方法应用于第一数据库,所述方法包括:
从第二数据库中拉取事务数据;
检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在所述第一数据库与所述第二数据库之间双向同步;所述回环标记为mark表变更标记;
在所述拉取到的事务数据包含所述mark表变更标记的情况下,确定所述拉取到的事务数据为,所述第二数据库从所述第一数据库中同步得到的事务数据;在所述拉取到的事务数据不包含所述mark表变更标记的情况下,确定所述拉取到的事务数据为,直接写入所述第二数据库的数据;
在所述拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
在所述拉取到的事务数据包含所述回环标记的情况下,所述方法还包括:
根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤,包括:
根据所述第二数据库的配置信息,确定所述第二数据库为主库的情况下,确定继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
根据所述第二数据库的配置信息,确定所述第二数据库为非主库的情况下,确定不执行数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
所述方法还包括:
在所述第一数据库中创建mark表;
所述对所述拉取到的事务数据中添加所述回环标记,包括:
利用所述mark表,在所述拉取到的事务数据的开头和结尾位置添加所述回环标记。
2.根据权利要求1所述的一种数据同步方法,其特征在于,所述方法包括:
将所述第一数据库和所述第二数据库中,数据读写频次更高的数据库设置为主库,数据读写频次更低的数据库设置为非主库,并将设置结果存储为所述第一数据库和所述第二数据库的配置信息。
3.根据权利要求1所述的一种数据同步方法,其特征在于,在对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库之前,所述方法还包括:
将所述拉取到的事务数据进行整合,过滤;
将过滤后的事务数据的数据类型转换为所述第一数据库兼容的数据类型。
4.根据权利要求1-3中任一项所述的一种数据同步方法,其特征在于,所述方法还包括:
获取由数据读写操作直接生成的候选事务数据,所述候选事务数据待所述第二数据库拉取,以进行所述第二数据库的数据同步。
5.根据权利要求1所述的一种数据同步方法,其特征在于,所述第一数据库与所述第二数据库共享数据传输服务器的数据传输服务;
所述数据传输服务器提供两个同步通道,分别供所述第一数据库和所述第二数据库获取需要的事务数据以完成数据同步。
6.一种数据库,其特征在于,所述数据库用于执行上述权利要求1-5中任一项所述的数据同步方法。
7.一种数据同步装置,其特征在于,所述装置包括:
拉取模块,用于从第二数据库中拉取事务数据;
检测模块,用于检测拉取到的事务数据是否包含回环标记,所述回环标记用于表征:所述拉取到的事务数据中的业务数据已在第一数据库与所述第二数据库之间双向同步;所述回环标记为mark表变更标记;
标记确定模块,用于在所述拉取到的事务数据包含所述mark表变更标记的情况下,确定所述拉取到的事务数据为,所述第二数据库从所述第一数据库中同步得到的事务数据;在所述拉取到的事务数据不包含所述mark表变更标记的情况下,确定所述拉取到的事务数据为,直接写入所述第二数据库的数据;
导入模块,用于在所述拉取到的事务数据不包含所述回环标记的情况下,对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;所述装置还包括:
确定模块,用于在所述拉取到的事务数据包含所述回环标记的情况下,根据所述第二数据库的配置信息,确定是否继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
所述确定模块,包括:
第一确定子模块,用于根据所述第二数据库的配置信息,确定所述第二数据库为主库的情况下,确定继续执行数据同步步骤:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
第二确定子模块,用于根据所述第二数据库的配置信息,确定所述第二数据库为非主库的情况下,确定不执行数据同步操作:对所述拉取到的事务数据添加所述回环标记,并将添加有所述回环标记的事务数据导入所述第一数据库;
其中,所述装置还包括:
创建模块,用于在所述第一数据库中创建mark表;
所述导入模块,包括:
标记子模块,用于利用所述mark表,在所述拉取到的事务数据的开头和结尾位置添加所述回环标记。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-5中任一所述的数据同步方法中的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-5中任一所述的数据同步方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310172964.3A CN116010172B (zh) | 2023-02-28 | 2023-02-28 | 一种数据同步方法、数据库、数据同步装置和产品 |
PCT/CN2023/139976 WO2024179139A1 (zh) | 2023-02-28 | 2023-12-19 | 一种数据同步方法、数据库、数据同步装置和产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310172964.3A CN116010172B (zh) | 2023-02-28 | 2023-02-28 | 一种数据同步方法、数据库、数据同步装置和产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116010172A CN116010172A (zh) | 2023-04-25 |
CN116010172B true CN116010172B (zh) | 2023-06-23 |
Family
ID=86025051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310172964.3A Active CN116010172B (zh) | 2023-02-28 | 2023-02-28 | 一种数据同步方法、数据库、数据同步装置和产品 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116010172B (zh) |
WO (1) | WO2024179139A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116010172B (zh) * | 2023-02-28 | 2023-06-23 | 天翼云科技有限公司 | 一种数据同步方法、数据库、数据同步装置和产品 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115146002A (zh) * | 2022-07-27 | 2022-10-04 | 中国工商银行股份有限公司 | 跨数据中心的数据同步方法及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376017B (zh) * | 2013-08-15 | 2018-10-23 | 阿里巴巴集团控股有限公司 | 在数据库之间进行数据同步的方法及系统 |
CN103886091B (zh) * | 2014-04-01 | 2017-08-01 | 无锡科技职业学院 | 一种基于记录标记的数据库同步方法 |
EP3070619B1 (en) * | 2015-03-16 | 2023-08-16 | Canon Kabushiki Kaisha | Information processing apparatuses performing synchronization of data and data synchronization methods |
CN106484807A (zh) * | 2016-09-23 | 2017-03-08 | 北京许继电气有限公司 | 构建自主可控数据库双活或多活集群架构的方法和系统 |
CN110659256B (zh) * | 2019-09-30 | 2021-02-26 | 掌阅科技股份有限公司 | 多机房同步方法、计算设备及计算机存储介质 |
CN113032477B (zh) * | 2019-12-24 | 2023-07-21 | 中移在线服务有限公司 | 基于gtid的长距离数据同步方法、装置及计算设备 |
CN115104092A (zh) * | 2020-05-29 | 2022-09-23 | 深圳市欢太科技有限公司 | 数据同步方法及相关装置 |
CN112241437A (zh) * | 2020-12-15 | 2021-01-19 | 深圳市易博天下科技有限公司 | 数据库多主同步的回环控制方法、装置、设备及存储介质 |
CN112800060B (zh) * | 2021-01-28 | 2024-06-28 | 百果园技术(新加坡)有限公司 | 数据处理方法、装置、计算机可读存储介质及电子设备 |
CN112905696B (zh) * | 2021-02-09 | 2021-11-19 | 掌阅科技股份有限公司 | 基于事务标识的多机房同步方法、计算设备及存储介质 |
CN115687503A (zh) * | 2021-07-22 | 2023-02-03 | 腾讯科技(深圳)有限公司 | 数据库间的数据同步方法、装置、设备及存储介质 |
CN114661821B (zh) * | 2022-03-25 | 2024-08-06 | 北京海量数据技术股份有限公司 | Oracle与Opengauss双向数据实时同步方法及系统 |
CN116010172B (zh) * | 2023-02-28 | 2023-06-23 | 天翼云科技有限公司 | 一种数据同步方法、数据库、数据同步装置和产品 |
-
2023
- 2023-02-28 CN CN202310172964.3A patent/CN116010172B/zh active Active
- 2023-12-19 WO PCT/CN2023/139976 patent/WO2024179139A1/zh unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115146002A (zh) * | 2022-07-27 | 2022-10-04 | 中国工商银行股份有限公司 | 跨数据中心的数据同步方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2024179139A1 (zh) | 2024-09-06 |
CN116010172A (zh) | 2023-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102402596B (zh) | 一种主从分离数据库的读写方法和系统 | |
US9229890B2 (en) | Method and a system for integrating data from a source to a destination | |
Xiong et al. | Synchronizing concurrent model updates based on bidirectional transformation | |
US20230161758A1 (en) | Distributed Database System and Data Processing Method | |
CN111324610A (zh) | 一种数据同步的方法及装置 | |
CN102682071A (zh) | 用于主存储器数据库的高效的多版本锁定 | |
CN107479881B (zh) | 差异代码的同步方法、存储介质、电子设备及系统 | |
US11238396B2 (en) | High performance map editor for business analysts | |
CN116010172B (zh) | 一种数据同步方法、数据库、数据同步装置和产品 | |
CN105205053A (zh) | 一种数据库增量日志解析方法及系统 | |
US20140156598A1 (en) | Replication control using eventually consistent meta-data | |
CN103428264A (zh) | 数据同步的方法、设备及系统 | |
CN105279285A (zh) | 一种关系型数据库与非关系型数据库的同步系统及方法 | |
CN107357920B (zh) | 一种增量式的多副本数据同步方法及系统 | |
CN102272751A (zh) | 在数据库环境通过背景同步的数据完整性 | |
CN104199664A (zh) | 一种基于注释的仿真代码同步生成方法 | |
CN103838780A (zh) | 数据库的数据恢复方法及相关的设备 | |
CN114691704A (zh) | 一种基于MySQL binlog的元数据同步方法 | |
EP2196901A1 (en) | Systems and methods for tracking software stands in a software production landscape | |
CN108984337A (zh) | 一种数据同步异常的修复方法、修复装置、介质和计算设备 | |
CN112241437A (zh) | 数据库多主同步的回环控制方法、装置、设备及存储介质 | |
CN113987393A (zh) | 一种网页操作记录器、系统、装置及方法 | |
CN115293124A (zh) | 软件工程化文档自动生成方法及装置 | |
US20240036890A1 (en) | System and method of a modular framework for configuration and reuse of web components | |
CN114327416A (zh) | 应用于开发分支的接口同步方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 100007 room 205-32, floor 2, building 2, No. 1 and No. 3, qinglonghutong a, Dongcheng District, Beijing Patentee after: Tianyiyun Technology Co.,Ltd. Address before: 100093 Floor 4, Block E, Xishan Yingfu Business Center, Haidian District, Beijing Patentee before: Tianyiyun Technology Co.,Ltd. |