数据同步方法、装置以及系统的制作方法

文档序号:6640389阅读:132来源:国知局
数据同步方法、装置以及系统的制作方法
【专利摘要】本发明提供的一种数据同步方法、装置以及系统,涉及数据存储领域,所述数据同步系统包括主机数据端以及备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,本发明实施例提供的数据同步方法,备份数据端在检测到主机数据端的目标数据被修改以后,并不是直接就将备份数据与目标数据进行同步,而是再次对比目标数据与备份数据,以确认主机数据端对目标数据的修改,得到确认以后,再将备份数据与目标数据进行同步。采用这样的数据同步方法,能有效的降低数据同步过程的抖动性,保持数据同步系统的稳定。
【专利说明】数据同步方法、装置以及系统

【技术领域】
[0001]本发明涉及数据存储领域,具体而言,涉及数据同步方法、装置以及系统。

【背景技术】
[0002]目前常见数据同步方法的方法为,需要数据进行同步的备份数据端向数据会发生变化的主机数据端发送数据同步的请求,同时对比主机数据端与备份数据端的数据,如果发现主机数据端新增或者删除了数据信息,则备份数据端立即进行数据同步,保持与目标数据的一致。采用这样的方式,如果主机数据端的出现了误操作,如新增了数据后又立刻删除该数据,备份数据端检测到新增了数据后也会对应的新增数据,但是下一次检测时,发现该数据已经删除,又需要对应删除该数据,这就导致数据同步时抖动性较大,数据同步系统不稳定。


【发明内容】

[0003]本发明的目的在于提供一种数据同步方法、装置以及系统,以改善现有数据同步方法进行数据同步抖动性较大,数据同步系统不稳定的问题。
[0004]为了实现上述目的,本发明实施例采用的技术方案如下:
[0005]第一方面,本发明实施例提供了一种数据同步方法,应用于数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述方法包括:
[0006]所述备份数据端向所述主机数据端发送数据同步请求指令;
[0007]对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为同步修改数据;
[0008]所述备份数据端向所述主机数据端继续发送数据同步请求指令;
[0009]对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据;
[0010]对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述目标数据一致。
[0011]结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述备份数据端向所述主机数据端继续发送数据同步请求指令,包括:所述备份数据端按预设间隔时间向所述主机数据端发送N条数据同步请求指令,N为大于I的整数;
[0012]所述对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据,包括:
[0013]每发送一条所述数据同步请求指令,就对比一次所述目标数据和所述备份数据,如果相同,则停止执行后续步骤,如果不同,记录不相同的数据为第η次修改对比数据,η为大于等于1、小于等于N的整数;
[0014]所述对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述目标数据一致,包括:
[0015]对比所述同步修改数据与所述第η次修改对比数据(η按I到N依次取值),如果每一次都相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
[0016]结合第一方面或第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述修改所述备份数据,包括:
[0017]如果所述目标数据和所述备份数据的不同之处在于,所述目标数据增加所述同步修改数据,则所述备份数据端在所述备份数据的基础上增加所述同步修改数据。
[0018]结合第一方面或第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述修改所述备份数据,包括:
[0019]如果所述目标数据和所述备份数据的不同之处在于,所述目标数据删除所述同步修改数据,则所述备份数据端在所述备份数据中删除所述同步修改数据。
[0020]第二方面,本发明实施例还提供了一种数据同步装置,应用于数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述数据同步装置设置于所述备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述装置包括:
[0021]第一数据同步请求指令发送单元,用于向所述主机数据端发送数据同步请求指令;
[0022]第一数据对比单元,用于对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为同步修改数据;
[0023]第二数据同步请求指令发送单元,用于向所述主机数据端继续发送数据同步请求指令;
[0024]第二数据对比单元,用于对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据;
[0025]数据同步单元,用于对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
[0026]结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述第二数据同步请求指令发送单元具体用于:
[0027]按预设间隔时间向所述主机数据端发送N条数据同步请求指令,N为大于I的整数;
[0028]所述第二数据对比单元具体用于:
[0029]每发送一条所述数据同步请求指令,就对比一次所述目标数据和所述备份数据,如果相同,则停止执行后续步骤,如果不同,记录不相同的数据为第η次修改对比数据,η为大于等于1、小于等于N的整数;
[0030]所述数据同步单元具体用于:
[0031]对比所述同步修改数据与所述第η次修改对比数据(η按I到N依次取值),如果每一次都相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
[0032]结合第二方面或第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述数据同步单元具体用于:
[0033]如果所述目标数据和所述备份数据的不同之处在于,所述目标数据增加所述同步修改数据,则在所述备份数据的基础上增加所述同步修改数据。
[0034]结合第二方面或第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述所述数据同步单元具体用于:
[0035]如果所述目标数据和所述备份数据的不同之处在于,所述目标数据删除所述同步修改数据,则在所述备份数据中删除所述同步修改数据。
[0036]第三方面,本发明实施例还提供了一种数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述备份端中设置有权利要求5-6任一所述数据同步装置。
[0037]结合第三方面,本发明实施例提供了第三方面的第一种可能的实施方式,其中,所述数据同步系统属于分布式储存系统。
[0038]本发明实施例提供的数据同步方法及装置,备份数据端在检测到主机数据端的目标数据被修改以后,并不是直接就将备份数据与目标数据进行同步,而是再次对比目标数据与备份数据,以确认主机数据端对目标数据的修改,得到确认以后,再将备份数据与目标数据进行同步。采用这样的数据同步方法,能有效的降低数据同步过程的抖动性,保持数据同步系统的稳定。
[0039]为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

【专利附图】

【附图说明】
[0040]为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。通过附图所示,本发明的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本发明的主旨。
[0041]图1示出了本发明实施例所提供的一种数据同步系统的结构框图;
[0042]图2示出了本发明实施例所提供的一种数据同步方法的流程图;
[0043]图3示出了本发明实施例所提供的另一种数据同步方法的流程图;
[0044]图4示出了本发明实施例所提供的一种数据同步装置的结构框图;
[0045]图5示出了本发明实施例所提供的另一种数据同步系统的结构框图;
[0046]图6示出了本发明实施例所提供的另一种数据同步装置的结构框图。

【具体实施方式】
[0047]下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]云存储是在云计算概念上延伸和发展出来的一个新的概念,是指通过集群应用、网络技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,那么云计算系统就转变成为一个云存储系统,所以云存储是一个以数据存储和管理为核心的云计算系统。简单来说,云存储就是将储存资源放到云上供人存取的一种新兴方案。使用者可以在任何时间、任何地方,透过任何可连网的装置连接到云上方便地存取数据。
[0049]数据同步在云存储系统中的运用非常广泛,目前常见数据同步方法的方法为,需要数据进行同步的备份数据端向数据会发生变化的主机数据端发送数据同步的请求,同时对比主机数据端与备份数据端的数据,如果发现主机数据端新增或者删除了数据信息,则备份数据端立即进行数据同步,保持与目标数据的一致。发明人经过长期观察和研宄发现,采用这样的方式,如果主机数据端的出现了误操作,如新增了数据后又立刻删除该数据,备份数据端检测到新增了数据后也会对应的新增数据,但是下一次检测时,发现该数据已经删除,又需要对应删除该数据,这就导致数据同步时抖动性较大,数据同步系统不稳定。
[0050]发明人为使现有的情况得到改善,提供了本发明实施例。备份数据端向数据会发生变化的主机数据端发送数据同步的请求,同时对比主机数据端的目标数据与备份数据端的目标数据,如果发现主机数据端新增或者删除了数据信息,记录该新增或者删除的数据信息。在间隔一段时间后,备份数据端向主机数据端继续发送数据同步的请求,再次比目标数据与备份数据,如果发现主机数据端新增或者删除的数据信息与之前记录相同,则确认主机端执行了该新增或者删除的数据信息的操作,此时,备份数据端再对其备份数据进行修改,使备份数据与目标数据保持一致。
[0051]参阅图1,本发明实施例提供了一种数据同步系统,所述数据同步系统包括主机数据端100以及备份数据端200,所述主机数据端100储存有可以被修改的目标数据,所述备份数据端200储存有需要与所述目标数据进行同步的备份数据。
[0052]参阅图2,本发明实施例提供了一种数据同步方法,应用于数据同步系统,所述方法包括:
[0053]步骤101:所述备份数据端向所述主机数据端发送数据同步请求指令。
[0054]步骤102:所述备份数据端对比所述目标数据和所述备份数据,如果不相同,则执行步骤103。
[0055]通过对比所述目标数据和所述备份数据就可以清楚的知道主机数据端的数据做出了哪些修改。
[0056]步骤103:所述备份数据端记录不相同的数据为同步修改数据;
[0057]如果发现所述目标数据和所述备份数据有不同,就说明目标数据已经被修改,将被修改的数据记录下来,但是并不对所述备份数据进行对应修改。
[0058]步骤104:所述备份数据端向所述主机数据端继续发送数据同步请求指令。
[0059]为了能确认主机数据端对目标数据的修改,备份数据端继续向主机数据端发送一次或者多次的数据同步请求指令,并对应的将目标数据与备份数据进行一次或者多次的对比。
[0060]步骤105:所述备份数据端对比所述目标数据和所述备份数据,如果不相同,则执行步骤106。
[0061]如果主机数据端对目标数据的修改不是误操作,对比目标数据与备份数据就会有不同的部分,如果主机数据端在备份数据端再次向主机数据端发送数据同步请求指令之前取消了之前对目标数据的操作,此时所述目标数据又恢复初始的与备份数据相同的状态了。
[0062]步骤106:所述备份数据端记录不相同的数据为修改对比数据。
[0063]将第二次对比后不相同的数据记录为修改对比数据,用于和同步修改数据进行对比,以确定主机数据端对目标数据的修改操作。
[0064]步骤107:所述备份数据端对比所述同步修改数据和所述修改对比数据,如果相同,则执行步骤108。
[0065]如果同步修改数据与修改对比数据相同,就说明主机数据端对目标数据进行修改之后,没有再继续其他的操作。
[0066]步骤108:所述备份数据端修改所述备份数据,使得所述备份数据与所述目标数据一致。
[0067]在确认目标数据做出的修改之后,备份数据端再对应修改备份数据。
[0068]例如:所述目标数据为ABC,所述备份数据的初始数据为目标数据的备份,即也为ABCo主机数据端对目标数据进行了修改,修改后的目标数据为ABCD,备份数据端向所述主机数据端发送数据同步请求指令,将目标数据和备份数据进行对比,发现目标数据增加了D,此时,则记录D为同步修改数据。在间隔了预设时间之后时间之后(预设时间由备份数据端根据数据同步系统的情况随机预先设置,在本实施例中设为2s),备份数据端向所述主机数据端继续发送数据同步请求指令。在这2s之内,如果所述主机数据端没有再对目标数据进行修改,备份数据端再次对比目标数据和备份数据,记录的修改对比数据也是D,就可以确认D为主机数据端对目标数据做出的修改,备份数据对应修改为ABCD,完成了本次同步过程;如果在这2s之内,所述主机数据端取消了之前增加D的操作,目标数据又变成了ABC,备份数据端再次对比目标数据和备份数据,会发现两者相同,进而停止执行后面的步骤。
[0069]本实施例提供的数据同步方法,备份数据端在检测到主机数据端的目标数据被修改以后,并不是直接就将备份数据与目标数据进行同步,而是再次对比目标数据与备份数据,以确认主机数据端对目标数据的修改,得到确认以后,再将备份数据与目标数据进行同步。采用这样的数据同步方法,能有效的降低数据同步过程的抖动性,保持数据同步系统的稳定。
[0070]参阅图3,本发明实施例所提供的另一种数据同步方法,应用于数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述方法包括:
[0071]步骤301:所述备份数据端向所述主机数据端发送数据同步请求指令。
[0072]步骤302:所述备份数据端对比所述目标数据和所述备份数据,如果不相同,则执行步骤303。
[0073]通过对比所述目标数据和所述备份数据就可以清楚的知道主机数据端的数据做出了哪些修改。
[0074]步骤303:所述备份数据端记录不相同的数据为同步修改数据。
[0075]如果发现所述目标数据和所述备份数据有不同,就说明目标数据已经被修改,将被修改的数据记录下来,但是并不对所述备份数据进行对应修改。
[0076]步骤304:所述备份数据端向所述主机数据端继续发送第η次数据同步请求指令,备份数据端按预设间隔时间向所述主机数据端发送N条数据同步请求指令,N为大于I的整数,η为大于等于1、小于等于N的整数,η的初始值为I,每发送一条数据同步请求指令,η的值增加I。例如:Ν = 3时,η = 1,向所述主机数据端继续发送第I次数据同步请求指令;η增加1,等于2,向所述主机数据端继续发送第2次数据同步请求指令;η再增加1,等于3,向所述主机数据端继续发送第3次数据同步请求指令。
[0077]步骤305:所述备份数据端对比所述目标数据和所述备份数据,如果不相同,则执行步骤306。
[0078]每发送一条所述数据同步请求指令,就对比一次所述目标数据和所述备份数据,如果相同,就说明目标数据的修改被取消了,则停止执行后续步骤,如果不同,执行步骤306。
[0079]步骤306:所述备份数据端记录不相同的数据为第η次修改对比数据,η为大于等于1、小于等于N的整数;例如:η = I时,执行步骤305后,记录的不相同的数据为第I次修改对比数据。
[0080]步骤307:所述备份数据端对比所述同步修改数据和所述第η次修改对比数据,当η〈Ν时,如果相同,则跳转到步骤304,继续发送数据同步请求指令,如果不同,就说明主机数据段取消了之前对目标数据的修改;当n = N时,如果相同,就说明对比了 N次,每一次的修改对比数据都与同步修改数据相同,则主机数据段对目标数据的修改已经确认,主机数据端对目标数据进行修改之后,没有再继续其他的操作,进而执行步骤308。
[0081]步骤308:所述备份数据端修改所述备份数据,使得所述备份数据与所述目标数据一致。如果主机数据段对目标数据的修改是在目标数据的基础上增加同步修改数据,则对应的在备份数据的基础上增加所述同步修改数据;如果主机数据段对目标数据的修改是从目标数据中删除同步修改数据,则对应的从备份数据中删除所述同步修改数据。
[0082]例如:所述目标数据为ABCD,所述备份数据的初始数据为目标数据的备份,即也为ABCD。主机数据端对目标数据进行了修改,修改后的目标数据为ABC,备份数据端向所述主机数据端发送数据同步请求指令,将目标数据和备份数据进行对比,发现目标数据删除了 D,此时,则记录D为同步修改数据。
[0083]设N = 3,在间隔了预设时间之后时间之后(预设时间由备份数据端根据数据同步系统的情况随机预先设置,在本实施例中设为2s),备份数据端向所述主机数据端继续发送数据同步请求指令。此时η = 1,发送的为第I次数据同步请求指令,如果所述主机数据端在这2s内没有对目标数据进行修改,备份数据端对比目标数据和备份数据,记录第I次修改对比数据为D ;备份数据端在等待了 2s后,向所述主机数据端继续发送数据同步请求指令,此时η = 2,发送的为第2次数据同步请求指令,如果所述主机数据端在这2s内还是没有对目标数据进行修改,备份数据端对比目标数据和备份数据,记录第2次修改对比数据为D ;备份数据端在又等待了 2s后,向所述主机数据端继续发送数据同步请求指令,此时η = 3,发送的为第3次数据同步请求指令,如果所述主机数据端在这2s内还是没有对目标数据进行修改,备份数据端对比目标数据和备份数据,记录第3次修改对比数据为D ;由于η=N,备份数据端不再向所述主机数据端继续发送数据同步请求指令,备份数据端对比同步修改数据、第I次修改对比数据、第2次修改对比数据、第3次修改对比数据,他们都为D,就可以确认D为主机数据端对目标数据做出的修改,备份数据对应删除D,更新为ABC,完成了本次同步过程;如果主机数据端在任一一个备份数据端等待2s内做出了取消删除D的操作,目标数据又变成了 ABCD,当下一次备份数据端对比目标数据和备份数据时,就会发现目标数据和备份数据相同,进而停止执行后面的步骤。
[0084]本实施例提供的数据同步方法,备份数据端在检测到主机数据端的目标数据被修改以后,并不是直接就将备份数据与目标数据进行同步,而是再经过多次对比目标数据与备份数据,以确认主机数据端对目标数据的修改,得到确认以后,再将备份数据与目标数据进行同步。采用这样的数据同步方法,能有效的降低数据同步过程的抖动性,保持数据同步系统的稳定。
[0085]参见图4,本发明实施例所提供的一种数据同步装置,应用于数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述数据同步装置设置于所述备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述装置包括:
[0086]第一数据同步请求指令发送单元201,用于向所述主机数据端发送数据同步请求指令。
[0087]第一数据对比单元202,用于对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为同步修改数据。
[0088]第二数据同步请求指令发送单元203,用于向所述主机数据端继续发送数据同步请求指令。
[0089]第二数据对比单元204,用于对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据。
[0090]数据同步单元205,用于对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
[0091]其中,所述第二数据同步请求指令发送单元203具体用于:
[0092]按预设间隔时间向所述主机数据端发送N条数据同步请求指令,N为大于I的整数。
[0093]所述第二数据对比单元204具体用于:
[0094]每发送一条所述数据同步请求指令,就对比一次所述目标数据和所述备份数据,如果相同,则停止执行后续步骤,如果不同,记录不相同的数据为第η次修改对比数据,η为大于等于1、小于等于N的整数。
[0095]所述数据同步单元205具体用于:
[0096]对比所述同步修改数据与所述第η次修改对比数据(η按I到N依次取值),如果每一次都相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
[0097]所述数据同步单元205具体用于:
[0098]如果所述目标数据和所述备份数据的不同之处在于,所述目标数据在所述备份数据的基础上增加所述同步修改数据,则在所述备份数据的基础上增加所述同步修改数据;
[0099]如果所述目标数据和所述备份数据的不同之处在于,所述目标数据在所述备份数据中删除所述同步修改数据,则在所述备份数据中删除所述同步修改数据。
[0100]本发明实施例所提供的数据同步装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
[0101]参见图5,本发明实施例所提供的另一种数据同步系统,所述数据同步系统包括主机数据端100以及备份数据端200,所述主机数据端100储存有可以被修改的目标数据,所述备份数据端200储存有需要与所述目标数据进行同步的备份数据,所述备份数据端200中设置有上述实施例中任一所述数据同步装置300。所述数据同步系统属于分布式储存系统,如云存储系统。
[0102]参见图6,本发明实施例还提供一种数据同步装置600,包括:处理器500,存储器501,总线502和通信接口 503,所述处理器500、通信接口 503和存储器501通过总线502连接;处理器500用于执行存储器501中存储的可执行模块,例如计算机程序。
[0103]其中,存储器501可能包含高速随机存取存储器(RAM !Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口 503 (可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
[0104]总线502可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0105]其中,存储器501用于存储程序,所述处理器500在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流程定义的装置所执行的方法可以应用于处理器500中,或者由处理器500实现。
[0106]处理器500可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器500中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器500可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器501,处理器500读取存储器501中的信息,结合其硬件完成上述方法的步骤。
[0107]另外,附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0108]本发明实施例所提供的进行一种数据同步装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
[0109]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0110]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0111]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0112]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0113]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0114]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0115]在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0116]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种数据同步方法,其特征在于,应用于数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述方法包括: 所述备份数据端向所述主机数据端发送数据同步请求指令; 对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为同步修改数据; 所述备份数据端向所述主机数据端继续发送数据同步请求指令; 对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据; 对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述目标数据一致。
2.根据权利要求1所述的方法,其特征在于, 所述备份数据端向所述主机数据端继续发送数据同步请求指令,包括:所述备份数据端按预设间隔时间向所述主机数据端继续发送N条数据同步请求指令,N为大于I的整数;所述对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据,包括: 每发送一条所述数据同步请求指令,就对比一次所述目标数据和所述备份数据,如果相同,则停止执行后续步骤,如果不同,记录不相同的数据为第η次修改对比数据,η为大于等于1、小于等于N的整数; 所述对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述目标数据一致,包括: 对比所述同步修改数据与所述第η次修改对比数据(η按I到N依次取值),如果每一次都相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
3.根据权利要求1-2任一所述的方法,其特征在于,所述修改所述备份数据,包括: 如果所述目标数据和所述备份数据的不同之处在于,所述目标数据增加所述同步修改数据,则所述备份数据端在所述备份数据的基础上增加所述同步修改数据。
4.根据权利要求1-2任一所述的方法,其特征在于,所述修改所述备份数据,包括: 如果所述目标数据和所述备份数据的不同之处在于,所述目标数据删除所述同步修改数据,则所述备份数据端在所述备份数据中删除所述同步修改数据。
5.一种数据同步装置,其特征在于,应用于数据同步系统,所述数据同步系统包括主机数据端以及备份数据端,所述数据同步装置设置于所述备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述装置包括: 第一数据同步请求指令发送单元,用于向所述主机数据端发送数据同步请求指令;第一数据对比单元,用于对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为同步修改数据; 第二数据同步请求指令发送单元,用于向所述主机数据端继续发送数据同步请求指令; 第二数据对比单元,用于对比所述目标数据和所述备份数据,如果不相同,记录不相同的数据为修改对比数据; 数据同步单元,用于对比所述同步修改数据和所述修改对比数据,如果相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
6.根据权利要求5所述的装置,其特征在于, 所述第二数据同步请求指令发送单元具体用于: 按预设间隔时间向所述主机数据端发送N条数据同步请求指令,N为大于I的整数; 所述第二数据对比单元具体用于: 每发送一条所述数据同步请求指令,就对比一次所述目标数据和所述备份数据,如果相同,则停止执行后续步骤,如果不同,记录不相同的数据为第η次修改对比数据,η为大于等于1、小于等于N的整数; 所述数据同步单元具体用于: 对比所述同步修改数据与所述第η次修改对比数据(η按I到N依次取值),如果每一次都相同,修改所述备份数据,使得所述备份数据与所述同步数据一致。
7.根据权利要求5-6任一所述的装置,其特征在于,所述数据同步单元具体用于: 如果所述目标数据和所述备份数据的不同之处在于,所述目标数据增加所述同步修改数据,则在所述备份数据的基础上增加所述同步修改数据。
8.根据权利要求5-6任一所述的装置,其特征在于,所述数据同步单元具体用于: 如果所述目标数据和所述备份数据的不同之处在于,所述目标数据删除所述同步修改数据,则在所述备份数据中删除所述同步修改数据。
9.一种数据同步系统,其特征在于,所述数据同步系统包括主机数据端以及备份数据端,所述主机数据端储存有可以被修改的目标数据,所述备份数据端储存有需要与所述目标数据进行同步的备份数据,所述备份数据端中设置有权利要求5-6任一所述数据同步装置。
10.根据权利要求9所述的数据同步系统,其特征在于,所述数据同步系统应用于分布式储存系统。
【文档编号】G06F3/06GK104503868SQ201410836700
【公开日】2015年4月8日 申请日期:2014年12月29日 优先权日:2014年12月29日
【发明者】黄睿 申请人:成都致云科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1