一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据库的数据同步方法及装置、存储介质、处理器与流程

2022-11-19 08:55:36 来源:中国专利 TAG:


1.本技术涉及数据同步领域,具体而言,涉及一种数据库的数据同步方法及装置、存储介质、处理器。


背景技术:

2.分布式数据库的数据同步整体架构有如下几个部分组成:源端数据库,当前支持分布式关系型数据库、分布式文件系统和非结构化数据库等。目标端数据库,当前支持分布式关系型数据库、分布式文件系统和非结构化数据库等。管理节点集群,用于数据核对配置,推送数据核对配置到核对节点。同时接收核对节点反馈回来的数据同步状态、进度等信息。同步节点集群,执行具体数据核对过程的模块。协调器集群,用于协调数据核对的模块。
3.分布式数据库作为源端同步到非分布式数据库时,由于底层分片库的同步进度差异,源端数据出现跨分片update时需要日志汇聚排序来保证数据的最终一致性,极为消耗性能、可操作性差。非分布式数据库作为源端同步到分布式数据库时,某个字段在目标端分布式数据库为分片键,源端更新此字段的值后,目标端因为禁止客户端跨片操作而导致无法直接进行同步。数据同步过程不可重做,源端一条记录进行过连续的主键变更操作,若调整位点到之前的某个时间点重做整个同步过程会出现主键冲突错误。
4.针对相关技术中涉及到分布式数据库的数据同步,需要将日志进行归并排序聚合来实现,导致操作性差,部分情况下无法同步的问题,目前尚未提出有效的解决方案。


技术实现要素:

5.本技术的主要目的在于提供一种数据库的数据同步方法及系统,以解决相关技术中涉及到分布式数据库的数据同步,需要将日志进行归并排序聚合来实现,导致操作性差,部分情况下无法同步的问题。
6.为了实现上述目的,根据本技术的一个方面,提供了一种数据库的数据同步方法,包括:获取需要进行数据同步的源数据库的待同步数据,其中,待同步数据包括目标事件产生的数据;对所述待同步数据的目标事件进行拆分,得到第一数据和第二数据,其中,所述第一数据为第一事件产生的数据,所述第二数据为第二事件产生的数据,所述第一事件和所述第二事件的叠加与所述目标事件相同;根据所述第一事件和所述第二事件,进行数据同步,将所述待同步数据同步到对应的目标数据库,其中,所述目标数据库与所述源数据库的种类不同,所述目标事件在不同种类的数据库中执行的数据结构不同,所述第一事件和所述第二事件在不同种类的数据库中执行的数据结构相同。
7.可选的,根据所述第一事件和所述第二事件,进行数据同步,将所述待同步数据同步到对应的目标数据库包括:根据所述源数据库和所述目标数据库的种类,确定对所述第一数据或所述第二数据是否进行修改;在对所述第一数据或所述第二数据进行修改的情况下,根据修改后的第一数据或第二数据,以及未修改的第二数据或第一数据,将第一事件和所述第二事件输入到所述目标数据库,以将所述待同步数据同步到所述目标数据库;和/
或,在对所述第一数据或所述第二数据未进行修改的情况下,根据所述第一数据或第二数据的执行属性,将第一事件和所述第二事件输入到所述目标数据库,以将所述待同步数据同步到所述目标数据库。
8.可选的,在所述源数据库为分布式数据库,所述目标数据库为非分布式数据库的情况下,确定所述第一数据需要修改;根据预设方式对所述第一数据进行修改;根据修改后的第一数据,以及未修改的第二数据,将第一事件和所述第二事件输入到所述目标数据库,以将所述待同步数据同步到所述目标数据库。
9.可选的,在所述源数据库为非分布式数据库,所述目标数据库为分布式数据库的情况下,确定所述第一数据或所述第二数据不需要修改;根据所述第一事件的和所述第二事件的第一执行属性,将所述第一事件和所述第二事件输入到所述目标数据库,以将所述待同步数据同步到所述目标数据库。
10.可选的,所述方法还包括:对所述第二数据的属性参数进行设置,确定所述第二事件的第二执行属性;根据所述第二执行属性将所述第一事件和所述第二事件输入到所述目标数据库,以将所述待同步数据同步到所述目标数据库。
11.可选的,所述目标事件为修改update事件,所述第一事件为删除delete事件,所述第二事件为插入insert事件。
12.可选的,根据预设方式对所述第一数据进行修改包括:对删除事件的语句数据中的查找条件中增加了分片键,其中,所述分片健用于标识数据的存储位置和修改版本,所述第一事件为删除delete事件的情况下,所述第一数据为所述删除事件的语句数据;和/或,第一执行属性为所述删除delete事件和所述插入insert事件执行入库至目标数据库的属性;和/或,第二执行属性为所述插入insert事件在入库至目标数据库时采用不存在则插入,存在则更新的执行策略的属性。
13.为了实现上述目的,根据本技术的另一方面,提供了一种数据库的数据同步装置。该装置包括:获取模块,用于获取需要进行数据同步的源数据库的待同步数据,其中,待同步数据包括目标事件产生的数据;拆分模块,用于对所述待同步数据的目标事件进行拆分,得到第一数据和第二数据,其中,所述第一数据为第一事件产生的数据,所述第二数据为第二事件产生的数据,所述第一事件和所述第二事件的叠加与所述目标事件相同;同步模块,用于根据所述第一事件和所述第二事件,进行数据同步,将所述待同步数据同步到对应的目标数据库,其中,所述目标数据库与所述源数据库的种类不同,所述目标事件在不同种类的数据库中执行的数据结构不同,所述第一事件和所述第二事件在不同种类的数据库中执行的数据结构相同。
14.根据本技术的另一方面,还提供了一种计算机可读存储介质,所述处存储介质用于存储程序,其中,所述程序执行上述中任意一项所述的数据库的数据同步方法。
15.根据本技术的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述中任意一项所述的数据库的数据同步方法。
16.通过本技术,获取需要进行数据同步的源数据库的待同步数据,其中,待同步数据包括目标事件产生的数据;对待同步数据的目标事件进行拆分,得到第一数据和第二数据,
其中,第一数据为第一事件产生的数据,第二数据为第二事件产生的数据,第一事件和第二事件的叠加与目标事件相同;根据第一事件和第二事件,进行数据同步,将待同步数据同步到对应的目标数据库,其中,目标数据库与源数据库的种类不同,目标事件在不同种类的数据库中执行的数据结构不同,第一事件和第二事件在不同种类的数据库中执行的数据结构相同。
17.通过对目标事件产生的待同步数据进行获取,对目标事件进行拆分为可以直接同步至目标数据库的第一事件和第二事件,从而将待同步数据拆分为第一数据和第二数据,达到了将依赖于日志归并聚合来实现数据同步的目标事件的待同步数据,直接拆分同步到目标数据库种的目的,实现了降低目标时间的待同步数据进行数据同步的操作难度,在避免日志归并聚合的情况下,有效准确的实现数据同步的技术效果,进而解决了相关技术中涉及到分布式数据库的数据同步,需要将日志进行归并排序聚合来实现,导致操作性差,部分情况下无法同步的问题。
附图说明
18.构成本技术的一部分的附图用来提供对本技术的进一步理解,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
19.图1是根据本技术实施例提供的一种数据库的数据同步方法的流程图;
20.图2是根据本技术实施方式的相关技术提供的分布式数据库进行数据同步的流程图;
21.图3是根据本技术实施方式提供的分布式数据库进行数据同步的流程图;
22.图4是根据本技术实施方式提供的分布式数据库进行数据同步实际执行样例的示意图;
23.图5是根据本技术实施方式提供的非分布式数据库作为源端的数据同步的流程图;
24.图6是根据本技术实施方式提供的数据库进行数据同步时可重复入库的流程图;
25.图7是根据本技术实施例提供的一种数据库的数据同步装置的示意图;
26.图8是根据本技术实施例提供的一种电子设备的示意图。
具体实施方式
27.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
28.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
29.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例。此外,术语“包括”和“具
有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
30.需要说明的是,本公开所涉及的相关信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。例如,本系统和相关用户或机构间设置有接口,在获取相关信息之前,需要通过接口向前述的用户或机构发送获取请求,并在接收到前述的用户或机构反馈的同意信息后,获取相关信息。
31.实施例
32.下面结合优选的实施步骤对本发明进行说明,图1是根据本技术实施例提供的一种数据库的数据同步方法的流程图,如图1所示,该方法包括如下步骤:
33.步骤s101,获取需要进行数据同步的源数据库的待同步数据,其中,待同步数据包括目标事件产生的数据;
34.步骤s102,对待同步数据的目标事件进行拆分,得到第一数据和第二数据,其中,第一数据为第一事件产生的数据,第二数据为第二事件产生的数据,第一事件和第二事件的叠加与目标事件相同;
35.步骤s103,根据第一事件和第二事件,进行数据同步,将待同步数据同步到对应的目标数据库,其中,目标数据库与源数据库的种类不同,目标事件在不同种类的数据库中执行的数据结构不同,第一事件和第二事件在不同种类的数据库中执行的数据结构相同。
36.通过上述步骤,通过对目标事件产生的待同步数据进行获取,对目标事件进行拆分为可以直接同步至目标数据库的第一事件和第二事件,从而将待同步数据拆分为第一数据和第二数据,达到了将依赖于日志归并聚合来实现数据同步的目标事件的待同步数据,直接拆分同步到目标数据库种的目的,实现了降低目标时间的待同步数据进行数据同步的操作难度,在避免日志归并聚合的情况下,有效准确的实现数据同步的技术效果,进而解决了相关技术中涉及到分布式数据库的数据同步,需要将日志进行归并排序聚合来实现,导致操作性差,部分情况下无法同步的问题。
37.上述步骤的执行主体可以上述数据库,或者用于管理数据库的功能模块,该功能模块可以设置在上述源数据库或者目标数据库中,还可以单独设置在上述源数据库和目标数据库的外部,还可以设置在上述源数据库和目标数据库外部的第三方设备上,通过与上述源数据库和目标数据库建立数据链接,对上述源数据库与目标数据库之间的数据同步进行管理。
38.上述待同步数据包括目标事件为update修改事件时,在数据库中发生了修改事件时,其数据发生了变化,可以记录其变化的数据进行增量数据同步。在分布式数据库和非分布式数据库中,其数据结构不同,对于update事件的数据同步,非分布式数据库无法明确其数据的先后顺序,而分布式数据库可以根据分片键来确定,这样就导致在分布式数据库和非分布式数据库之间的update事件的数据同步存在一定的障碍。
39.本实施例将update事件拆分为第一事件和第二事件,第一事件和第二事件的叠加与该目标事件,也即是update事件是相同的。上述第一事件可以为delete删除事件,第二事件可以为insert插入事件。在分布式数据库和非分布式数据库中delete事件和insert事件
都是可以直接进行同步的,而且update事件在拆分时,delete事件和insert事件是有先后顺序的,因此,通过具有先后顺序的delete事件和insert事件就可以将update事件的数据直接同步到目标数据库中。
40.可选的,根据第一事件和第二事件,进行数据同步,将待同步数据同步到对应的目标数据库包括:根据源数据库和目标数据库的种类,确定对第一数据或第二数据是否进行修改;在对第一数据或第二数据进行修改的情况下,根据修改后的第一数据或第二数据,以及未修改的第二数据或第一数据,将第一事件和第二事件输入到目标数据库,以将待同步数据同步到目标数据库;和/或,在对第一数据或第二数据未进行修改的情况下,根据第一数据或第二数据的执行属性,将第一事件和第二事件输入到目标数据库,以将待同步数据同步到目标数据库。
41.具体的,在实施时,通常分为两种情况,第一种情况,源数据库为分布式数据库,目标数据库为非分布式数据库。第二种情况,源数据库为非分布式数据库,目标数据库为分布式数据库。对此,不同的情况下,对delete事件和insert事件的处理方式不同。
42.具体的,在第一种情况下,考虑到delete事件和insert事件的先后顺序,在执行delete事件时,由于insert事件执行前后的数据版本不同,可能会发生误删的情况。因此,需要在delete事件中增加其针对的数据版本标识,也即是分片键,来保证delete事件针对的数据是准确无误的。
43.可选的,在源数据库为分布式数据库,目标数据库为非分布式数据库的情况下,确定第一数据需要修改;根据预设方式对第一数据进行修改;根据修改后的第一数据,以及未修改的第二数据,将第一事件和第二事件输入到目标数据库,以将待同步数据同步到目标数据库。
44.在第二种情况下,考虑到分布式数据库出于性能和安全方面的考虑,通常会禁止客户端执行跨分片更新动作,这也将导致源端为非分布式数据库时涉及相关字段时会无法进行数据同步的问题。因此,对update事件进行解析,根据update事件的变更前后信息构造delete事件和insert事件,相当于对无法直接执行的语句进行等效转化,从而入库目标端分布式数据库,实现数据同步的最终一致性。也即是不需要对delete事件和insert事件进行修改,只需要将update事件拆分为delete事件和insert事件就可以进行数据同步了。
45.可选的,在源数据库为非分布式数据库,目标数据库为分布式数据库的情况下,确定第一数据或第二数据不需要修改;根据第一事件的和第二事件的第一执行属性,将第一事件和第二事件输入到目标数据库,以将待同步数据同步到目标数据库。
46.需要说明的是,不论在第一种情况或者第二种情况下,对于insert事件的执行均可以采用不存在则插入,存在则更新的策略。来保证insert事件执行前后的数据安全性。
47.可选的,方法还包括:对第二数据的属性参数进行设置,确定第二事件的第二执行属性;根据第二执行属性将第一事件和第二事件输入到目标数据库,以将待同步数据同步到目标数据库。
48.可选的,根据预设方式对第一数据进行修改包括:对删除事件的语句数据中的查找条件中增加了分片键,其中,分片健用于标识数据的存储位置和修改版本,第一事件为删除delete事件的情况下,第一数据为删除事件的语句数据;和/或,第一执行属性为删除delete事件和插入insert事件执行入库至目标数据库的属性;和/或,第二执行属性为插入
insert事件在入库至目标数据库时采用不存在则插入,存在则更新的执行策略的属性。
49.另外,在实施时,通常存在一段时间内的数据进行主键的连续变更操作。数据同步组件通过日志解析对记录的变更过程进行重放,有时候由于数据修复或者其他原因,需要调整同步的位点到某个历史时间点再次进行同步,此时在不清理目标表的情况下会出现主键冲突无法入库目标端的情况。数据同步可重复入库方法通过将update事件拆分为delete insert语句并在insert入库时执行不存在则插入,存在则更新的策略,实现数据同步过程的可重做而不影响数据的最终一致性。
50.需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
51.需要说明的是,本技术还提供了一种可选的实施方式,下面对该实施方式进行详细说明。
52.本实施方式提供了一种非分布式与分布式数据库之间可重做跨片同步方法,主要包括分布式数据库作为源端出现跨片update数据时同步到非分布式数据库的方法、非分布式数据库作为源端时某个字段在目标端是分片键的入库方法、数据可重复同步入库方法。本实施方式提出的方法巧妙地通过数据等效拆分、入库限定条件、合理调用数据库原生的主键合并等技术,将原本分布式数据库到非分布式数据库同步时必须要执行的日志归并排序聚合的环节进行规避,极大程度地提高了数据同步的性能和可操作性;突破非分布式数据库同步到分布式数据库时入库不能执行跨分片update的限制;同时实现了数据同步的可重复入库,在数据修复环节无需清理目标端现有的数据,当同步位点追平时即可达到数据的最终一致性,在实际运维中具有极大的运用意义。
53.1.分布式数据库作为源端出现跨片update数据时同步到非分布式数据库的方法:
54.图2是根据本技术实施方式的相关技术提供的分布式数据库进行数据同步的流程图,如图2所示,传统的处理流程如图2,其中日志聚合和排序的环节是为了保证底层分片库的同步进度有差异时数据仍然能够达成最终一致性。传统方法极为消耗性能、可操作性差。
55.图3是根据本技术实施方式提供的分布式数据库进行数据同步的流程图,如图3所示,本实施方式的方法处理源端出现跨分片update动作时,由代理层拆分delete insert动作,日志解析后分别读取所有底层库的日志进行独立同步。入库时对sql语句做额外的处理,delete语句入库时增加限定条件,即在原有where条件中除了主键字段之外额外增加分片键;insert时采用不存在时插入、存在即更新的策略。经过以上处理后无论目标端先执行delete语句还是先执行insert语句,均不会影响数据同步的最终一致性,且不需要复杂的日志排序归并环节。
56.图4是根据本技术实施方式提供的分布式数据库进行数据同步实际执行样例的示意图,如图4所示,以图4所描述的一个实际执行过程为例,本实施方式的方法在数据同步入库时delete和insert...on duplicate key update语句将在目标端分布式数据库的不同分片上执行。不论哪条语句先执行都不影响数据同步的最终一致性:
57.1)先执行insert...on duplicate key update语句,后执行delete语句,由于delete语句中的where条件带上了分片键的条件,因此先执行的insert语句插入或更新的数据并不会被广播删除。
58.2)先执行delete语句,后执行insert...on duplicate key update语句,与期望的顺序一致,数据同步可以达成一致性。
59.2.非分布式数据库作为源端时某个字段在目标端是分片键的入库方法:
60.图5是根据本技术实施方式提供的非分布式数据库作为源端的数据同步的流程图,如图5所示,通常分布式数据库出于性能和安全方面的考虑,会禁止客户端执行跨分片更新动作,这也将导致源端为非分布式数据库时涉及相关字段时会无法进行数据同步的问题。本实施方式提出的方法在数据同步组件层面对update事件进行解析,根据update的变更前后信息构造delete和insert事件,相当于对无法直接执行的语句进行等效转化,从而入库目标端分布式数据库,实现数据同步的最终一致性。
61.3.数据同步可重复入库方法:
62.业务上通常存在一段时间内某条记录进行主键的连续变更操作。数据同步组件通过日志解析对记录的变更过程进行重放,有时候由于数据修复或者其他原因,需要调整同步的位点到某个历史时间点再次进行同步,此时在不清理目标表的情况下会出现主键冲突无法入库目标端的情况。数据同步可重复入库方法通过将update事件拆分为delete insert语句并在insert入库时执行不存在则插入,存在则更新的策略,实现数据同步过程的可重做而不影响数据的最终一致性。
63.图6是根据本技术实施方式提供的数据库进行数据同步时可重复入库的流程图,如图6所示,图6对比了传统方法和本实施方式的方法在处理重复进行数据同步时的差异,使用本方法可以实现在随意调整位点而无需清理目标表的情况下进行数据同步过程的重放,具有很强的可操作性和实用性。
64.本实施方式相对现有技术而言,巧妙使用入库限定条件来回避分布式数据库到非分布式数据库同步中日志归并排序聚合的环节,减少了同步系统的整体复杂度,大幅度提高同步速度。使用数据等效拆分技术在保证数据同步最终一致性的前提下突破非分布式数据库同步到分布式数据库时入库不能执行跨分片update的限制。合理运用数据库原生的主键冲突合并技术,结合数据等效拆分方法共同实现数据可重复同步,在实践中具有很强的可操作性和运维意义。
65.例如:生产系统中根据不同职责的划分同时使用基于mysql的分布式数据库和oracle数据库,初始时需要做一次全量数据割接,把分布式数据的业务数据全部导入到oracle数据库,然后每天把分布式数据库中产生的约110g业务相关数据同步到oracle数据库,同时把oracle数据库中的相关配置数据同步到分布式数据库。
66.具体的实施步骤如下:
67.1.使用本实施方式的方法开发的数据同步系统进行表数据同步,可以做全量同步和实时增量同步;
68.2.本实施例中需要在分布式与非分布式数据库之间进行数据的相互同步,故建立两条单独的同步链路。链路之一为分布式数据库到oracle数据库,另外一条链路为oracle数据库到分布式数据库。填入相对应的源库信息和目标服务器信息,可以一键自动化生成同步映射关系;
69.3.开启分布式数据库到oracle数据库的同步链路做一次全量数据同步,并记录全量开始的时间点;
70.4.调整增量同步位点到全量时间点之前,开启分布式数据库到oracle数据库的增量同步。其中出现跨分片update动作时由本实施方式描述的方法进行处理,不需要用户额外操作;
71.5.开启oracle数据库到分布式数据的同步链路,进行配置数据的增量同步。遇到某个字段在分布式数据库为分片键时,由于禁止跨片动作的设置,update语句无法直接在分布式数据库执行。同步系统会使用本实施方式描述的方法进行数据等效拆分,并同步到目标端。
72.6.日常同步过程中偶尔出现应用误删除分布式数据库同步到oracle数据库的部分增量数据的情况,可根据时间调整同步位点,使用本实施方式描述的方法可以重做数据同步的过程,达到数据修复的效果。
73.分布式与非分布式数据库之间无障碍高效同步,数据同步过程可重做,增量同步位点可按时间点随意进行调整,当增量同步追平后数据可达成最终一致性。
74.本技术实施例还提供了一种数据库的数据同步装置,需要说明的是,本技术实施例的数据库的数据同步装置可以用于执行本技术实施例所提供的用于数据库的数据同步方法。以下对本技术实施例提供的数据库的数据同步装置进行介绍。
75.图7是根据本技术实施例提供的一种数据库的数据同步装置的示意图,如图7所示,该装置包括:获取模块72,拆分模块74,同步模块76,下面对该装置进行详细说明。
76.获取模块72,用于获取需要进行数据同步的源数据库的待同步数据,其中,待同步数据包括目标事件产生的数据;拆分模块74,与上述获取模块72相连,用于对待同步数据的目标事件进行拆分,得到第一数据和第二数据,其中,第一数据为第一事件产生的数据,第二数据为第二事件产生的数据,第一事件和第二事件的叠加与目标事件相同;同步模块76,与上述拆分模块74相连,用于根据第一事件和第二事件,进行数据同步,将待同步数据同步到对应的目标数据库,其中,目标数据库与源数据库的种类不同,目标事件在不同种类的数据库中执行的数据结构不同,第一事件和第二事件在不同种类的数据库中执行的数据结构相同。
77.本技术实施例提供的数据库的数据同步装置,通过对目标事件产生的待同步数据进行获取,对目标事件进行拆分为可以直接同步至目标数据库的第一事件和第二事件,从而将待同步数据拆分为第一数据和第二数据,达到了将依赖于日志归并聚合来实现数据同步的目标事件的待同步数据,直接拆分同步到目标数据库种的目的,实现了降低目标时间的待同步数据进行数据同步的操作难度,在避免日志归并聚合的情况下,有效准确的实现数据同步的技术效果,进而解决了相关技术中涉及到分布式数据库的数据同步,需要将日志进行归并排序聚合来实现,导致操作性差,部分情况下无法同步的问题。
78.数据库的数据同步装置包括处理器和存储器,上述获取模块72,拆分模块74,同步模块76等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
79.处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决了相关技术中涉及到分布式数据库的数据同步,需要将日志进行归并排序聚合来实现,导致操作性差,部分情况下无法同步的问题。
80.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/
或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存储芯片。
81.本发明实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现数据库的数据同步方法。
82.本发明实施例提供了一种处理器,处理器用于运行程序,其中,程序运行时执行数据库的数据同步方法。
83.图8是根据本技术实施例提供的一种电子设备的示意图,如图8所示,本技术实施例提供了一种电子设备80,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述任一项方法的步骤。
84.本技术中的设备可以是服务器、pc、pad、手机等。
85.本技术还提供了一种计算机程序产品,当在数据库的数据同步设备上执行时,适于执行初始化有上述任一方法步骤的程序。
86.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
87.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据库的数据同步设备的处理器以产生一个机器,使得通过计算机或其他可编程数据库的数据同步设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
88.这些计算机程序指令也可存储在能引导计算机或其他可编程数据库的数据同步设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
89.这些计算机程序指令也可装载到计算机或其他可编程数据库的数据同步设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
90.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
91.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
92.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。
计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
93.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
94.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
95.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献