CN110489389B - 一种数据同步方法及装置 - Google Patents
一种数据同步方法及装置 Download PDFInfo
- Publication number
- CN110489389B CN110489389B CN201910760817.1A CN201910760817A CN110489389B CN 110489389 B CN110489389 B CN 110489389B CN 201910760817 A CN201910760817 A CN 201910760817A CN 110489389 B CN110489389 B CN 110489389B
- Authority
- CN
- China
- Prior art keywords
- data
- primary storage
- initiating
- list
- communication connection
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明的方面涉及数据领域,解决目前数据同步方式只能从一个源端下载数据,数据同步所需时间长的问题,本申请提供一种数据同步方法及装置,一种应用于发起端数据同步方法包括:发送同步数据请求至通信连接的一级存储端,接收名单列表,其中,名单列表记录存储有数据的多个一级存储端,根据名单列表,将数据分为多个数据段,根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步。从多个一级存储端并行下载对应的部分数据,节省了数据同步的时间,本公开中提供的数据同步方法适用于所有数据的同步,适用范围更广泛。
Description
技术领域
本发明一般地涉及数据同步技术领域,特别是涉及一种数据同步方法及装置。
背景技术
数据同步,为一端通过单一方向下载源端数据,实现一端与源端的数据同步与信息共享,进而保证一端与源端数据的完整性和统一性。其中,一端与源端可为手机、平板、台式电脑、笔记本电脑、服务器、数据库等需要同步数据的设备。目前数据同步方式为,通过数据、文件同步软件,一端通过单一方向从一个源端下载数据、文件,然而此数据同步所需时间长。另外,数据集存在增加、删除、修改某几条数据,导致存在中间数据变化的情况,现有数据同步软件只适用于数据、文件的同步,而不适用于以“数据集”的形式存在的数据的同步。
发明内容
为了解决现有技术中存在的上述问题,本发明提供一种数据方法及装置。
第一方面,本发明实施例提供一种数据同步方法,其中,应用于发起端,包括:
发送同步数据请求至通信连接的一级存储端,其中,同步数据请求经由与发起端通信连接的一级存储端发送至二级存储端,二级存储端发送同步数据请求至与发起端无通信连接的一级存储端,二级存储端与一级存储端通信连接,同步数据请求中包括数据的数据标签,数据标签为数据的唯一标记;
接收名单列表,其中,名单列表记录存储有数据的多个一级存储端,名单列表由二级存储端根据数据标签生成,并经由发起端通信连接的一级存储端发送至发起端;
根据名单列表,将数据分为多个数据段,其中,每个数据段对应部分数据,发起端分配一个数据段至每个名单列表记录的一级存储端;
根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步。
在一例中,根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步,包括:
请求建立临时数据同步通道,其中,临时数据同步通道为发起端与名单列表记录的、与发起端无通信连接的一级存储端同步数据的临时通道,临时数据同步通道个数与名单列表记录的、与发起端无通信连接的一级存储端的个数相对应;
通过临时数据同步通道,发送下载部分数据的请求,其中,下载部分数据的请求包含名单列表记录的、与发起端无通信连接的一级存储端对应的数据段,名单列表记录的、与发起端无通信连接的一级存储端基于数据标签及数据段,响应发起端发送的下载部分数据的请求;
并行下载多个部分数据,完成数据的同步。
在一例中,同步数据请求中还包括身份标签,身份标签为发起端的唯一身份标记;
根据所述名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步,还包括:
向名单列表记录的、与发起端无通信连接的一级存储端发送身份标签,以使名单列表记录的、与发起端无通信连接的一级存储端接收并匹配发起端发送的身份标签,及二级存储端发送给名单列表记录的、与发起端无通信连接的一级存储端的身份标签,若相同,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道。
在一例中,第一方面的方法还包括:
接收临时令牌,其中,临时令牌由与发起端通信连接的一级存储端生成并发送至发起端,经由二级存储端发送临时令牌至与名单列表记录的、与发起端无通信连接的一级存储端,临时令牌用于禁止名单列表记录的多个一级存储端中数据的更新,还用于保证数据同步的安全性;
根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步,还包括:
向名单列表记录的、与发起端无通信连接的一级存储端发送临时令牌,以使名单列表记录的、与发起端无通信连接的一级存储端接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道。
在一例中,第一方面的方法还包括:
发送删除通知,其中,删除通知用于在数据同步完成后删除临时数据同步通道。
在一例中,第一方面的方法还包括:
生成数据标签,和/或生成身份标签。
第二方面,本发明实施例提供一种数据同步方法其中,应用于与发起端以及二级存储端分别通信连接的一级存储端,包括:
接收由发起端发出的同步数据请求,其中,同步数据请求包括需要同步数据的数据标签,数据标签为数据的唯一标记;
发送同步数据请求至二级存储端;
接收由二级存储端发出的名单列表,其中,名单列表记录存储有数据的多个一级存储端,名单列表由二级存储端根据数据标签生成;
发送名单列表至发起端,以使发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,并使发起端分配一个数据段至每个名单列表记录的一级存储端,并根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
在一例中,第二方面的方法还包括:
向二级存储端发送数据状态信息,其中,数据状态信息为与发起端以及二级存储端分别通信连接的一级存储端存储的所有数据的变化信息,以使二级存储端根据数据标签和数据状态信息生成名单列表。
在一例中,第二方面的方法还包括:
生成临时令牌,其中,临时令牌结合数据标签,可禁止名单列表记录的多个一级存储端中的数据更新,还用于保证数据同步的安全性;
发送临时令牌至发起端以及二级存储端。
在一例中,第二方面的方法还包括:
所述方法还包括:
停止更新数据,其中,与发起端通信连接的一级存储端,根据临时令牌及数据标签,禁止数据的更新,临时令牌中包括禁止更新数据的规定。
第三方面,本发明实施例提供一种数据同步方法,其中,应用于与发起端无通信连接的一级存储端,包括:
响应于发起端发出的建立临时数据同步通道的请求,与发起端建立临时数据同步通道;
通过临时数据同步通道,响应发起端发出的下载部分数据的请求,其中,部分数据对应于一个数据段中的数据,数据段为部分需要同步的数据。
在一例中,第三方面的方法还包括:
接收由二级存储端发送的同步数据请求,其中,发起端经由通信连接的一级存储端发送同步数据请求至二级存储端,同步数据请求包括数据标签及身份标签,数据标签、身份标签由发起端生成,数据标签为数据的唯一标记,身份标签为发起端的唯一身份标记;
匹配发起端发送的身份标签与同步数据请求中的身份标签,若相同,允许与发起端建立临时数据同步通道,其中,发起端在请求建立临时数据同步通道时,发送其身份标签至发起端无通信连接的一级存储端。
在一例中,第三方面的方法还包括:
接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,其中,临时令牌由与发起端通信连接的一级存储端生成,并发送至发起端及二级存储端。
在一例中,第三方面的方法还包括:
根据临时令牌及数据标签,停止更新数据,其中,临时令牌中包括禁止更新数据的规定。
在一例中,第三方面的方法还包括:
发送数据状态信息至二级存储端,其中,数据状态信息为与发起端无通信连接的一级存储端存储数据的状态变化信息,与发起端通信连接的一级存储端发送数据状态信息至二级存储端,二级存储端根据数据标签和数据状态信息生成名单列表,名单列表记录存储有数据的多个一级存储端,并经由与发起端通信连接的一级存储端发送至发起端。
在一例中,第三方面的方法还包括:
响应于发起端发送的删除通知,删除临时数据同步通道,其中,删除通知为发起端下载完成部分数据后生成。
第四方面,本发明实施例提供一种数据同步方法,其中,应用于二级存储端,包括:
接收同步数据请求,其中,同步数据请求由发起端经由发起端通信连接的一级存储端发送至二级存储端,同步数据请求包括数据标签,数据标签为数据的唯一标记;
接收一级存储端发送的数据状态信息,其中,数据状态信息为一级存储端的数据状态变化信息;
基于数据标签及数据状态信息,生成名单列表,其中,名单列表记录存储有数据的多个一级存储端;
发送名单列表至发起端通信连接的一级存储端,并经由发起端通信连接的一级存储端发送至发起端,其中,发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,发起端分配一个所述数据段至每个名单列表记录的一级存储端,发起端根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
在一例中,第四方面的方法还包括:
发送同步数据请求至名单列表记录的、与发起端无通信连接的一级存储端,其中,同步数据请求还包括身份标签,身份标签为发起端的唯一身份标记,用于识别发起端的身份,发起端无通信连接的一级存储端,匹配发起端发送的身份标签与同步数据请求中的身份标签,若相同,名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,临时数据同步通道为发起端与发起端无通信连接的一级存储端同步数据的临时通道,临时数据同步通道个数与数据段个数相对应。
在一例中,第四方面的方法还包括:
接收发起端通信连接的一级存储端生成并发送的临时令牌,临时令牌结合数据标签,可禁止名单列表记录的多个一级存储端中数据的更新,临时令牌还用于保证发起端从名单列表记录的多个一级存储端下载部分数据的安全性;
发送临时令牌至名单列表记录的、与发起端无通信连接的一级存储端。
第五方面,本发明实施例提供一种数据同步装置,其中,应用于发起端,包括:
发送单元,用于发送同步数据请求至通信连接的一级存储端,其中,同步数据请求经由与发起端通信连接的一级存储端发送至二级存储端,二级存储端发送同步数据请求至与发起端无通信连接的一级存储端,二级存储端与一级存储端通信连接,同步数据请求中包括数据的数据标签,数据标签为数据的唯一标记。
接收单元,用于接收名单列表,其中,名单列表记录存储有数据的多个一级存储端,名单列表由二级存储端根据数据标签生成,并经由发起端通信连接的一级存储端发送至发起端。
分配单元,用于根据名单列表,将数据分为多个数据段,其中,每个数据段对应部分数据,发起端分配一个数据段至每个名单列表记录的一级存储端。
下载单元,用于根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步。
第六方面,本发明实施例提供一种数据同步装置,其中,应用于与发起端以及二级存储端分别通信连接的一级存储端,包括:
接收单元,用于接收由发起端发出的同步数据请求及由二级存储端发出的名单列表,其中,同步数据请求包括需要同步数据的数据标签,数据标签为数据的唯一标记,名单列表记录存储有数据的多个一级存储端,名单列表由二级存储端根据数据标签生成。
发送单元,用于发送同步数据请求至二级存储端及发送名单列表至发起端,以使发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,并使发起端分配一个数据段至每个名单列表记录的一级存储端,并根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
第七方面,本发明实施例提供一种数据同步装置,其中,应用于与发起端无通信连接的一级存储端,包括:
建立通道单元,用于响应于发起端发出的建立临时数据同步通道的请求,与发起端建立临时数据同步通道。
发送单元,用于响应发起端发出的下载部分数据的请求,其中,部分数据对应于一个数据段中的数据,数据段为部分需要同步的数据。
第八方面,本发明实施例提供一种数据同步装置,其中,应用于二级存储端,包括:
接收单元,用于接收同步数据请求及一级存储端发送的数据状态信息,其中,同步数据请求由发起端经由发起端通信连接的一级存储端发送至二级存储端,同步数据请求包括数据标签,数据标签为数据的唯一标记,数据状态信息为一级存储端的数据状态变化信息;
生成单元,用于基于数据标签及数据状态信息,生成名单列表,其中,名单列表记录存储有数据的多个一级存储端;
发送单元,用于发送名单列表至发起端通信连接的一级存储端,并经由发起端通信连接的一级存储端发送至发起端,其中,发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,发起端分配一个数据段至每个名单列表记录的一级存储端,发起端根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
第九方面,本发明实施例提供一种数据同步系统,其中,数据同步系统包括:
发起端、一级存储端、二级存储端;一级存储端包括:与发起端通信连接的一级存储端,及与发起端无通信连接的一级存储端;一级存储端与二级存储端通信连接。
第十方面,本发明实施例提供一种电子设备,其中,电子设备包括:
存储器,用于存储指令;以及
处理器,用于调用存储器存储的指令执行如第一方面所述的、应用于发起端的一种数据同步方法或如第二方面所述的应用于与发起端、二级存储端通信连接的一级存储端的一种数据同步方法或如第三方面所述的、应用于与发起端无通信连接的一级存储端的一种数据同步方法或如第四方面所述的、应用于二级存储端的一种数据同步方法。
第十一方面,本发明实施例提供一种计算机可读存储介质,其中,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在由处理器执行时,执行如第一方面所述的、应用于发起端的一种数据同步方法或如第二方面所述的应用于与发起端、二级存储端通信连接的一级存储端的一种数据同步方法或如第三方面所述的、应用于与发起端无通信连接的一级存储端的一种数据同步方法或如第四方面所述的、应用于二级存储端的一种数据同步方法。
本发明提供的一种数据同步方法及装置,根据具有与发起端所要同步的数据集相同数据集的存储端来生成名单列表,能够将一个完整数据拆分成多个数据段,并分配给名单列表中的多个一级存储端。一方面,由于同时从名单列表的多个一级存储端,即发起端的多个源端,同时下载对应的部分数据,与现有的数据同步方法,发起端从一个源端下载完整数据相比,节省了数据同步的时间,提高数据同步效率。另一方面,本公开中提供的数据同步方法适用于不同类型数据的同步,包括文件中的数据、数据集中的数据同步,适用范围更广泛。
附图说明
通过参考附图阅读下文的详细描述,本发明实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1示出了本发明实施例提供的一种数据同步系统示意图;
图2示出了本发明实施例提供的应用于发起端的一种数据同步方法示意图;
图3示出了本发明实施例提供的应用于发起端的第二种数据同步方法示意图;
图4示出了本发明实施例提供的应用于发起端的第三种数据同步方法示意图;
图5示出了本发明实施例提供的应用于与发起端、二级存储端分别通信连接的一级存储端的一种数据同步方法示意图;
图6示出了本发明实施例提供的应用于与发起端、二级存储端分别通信连接的一级存储端的第二种数据同步方法示意图;
图7示出了本发明实施例提供的应用于与发起端无通信连接的一级存储端的一种数据同步方法示意图;
图8示出了本发明实施例提供的应用于二级存储端的一种数据同步方法示意图;
图9示出了本发明实施例提供的应用于二级存储端的第二种数据同步方法示意图;
图10示出了本发明实施例提供的应用于二级存储端的第三种数据同步方法示意图;
图11示出了本发明实施例提供的应用于所有端的一种数据同步方法示意图;
图12示出了本发明实施例提供的应用于发起端的一种数据同步装置示意图;
图13示出了本发明实施例提供的应用于发起端的第二种数据同步装置示意图;
图14示出了本发明实施例提供的应用于与发起端、二级存储端分别通信连接的一级存储端的一种数据同步装置示意图;
图15示出了本发明实施例提供的应用于与发起端、二级存储端分别通信连接的一级存储端的第二种数据同步装置示意图;
图16示出了本发明实施例提供的应用于与发起端、二级存储端分别通信连接的一级存储端的第三种数据同步装置示意图;
图17示出了本发明实施例提供的应用于与发起端无通信连接的一级存储端的一种数据同步装置示意图;
图18示出了本发明实施例提供的应用于与发起端无通信连接的一级存储端的第二种数据同步装置示意图;
图19示出了本发明实施例提供的应用于与发起端无通信连接的一级存储端的第三种数据同步装置示意图;
图20示出了本发明实施例提供的应用于二级存储端的一种数据同步装置示意图;
图21示出了本发明实施例提供的一种电子设备示意图;
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。注意,虽然本文中使用“第一”、“第二”等表述来描述本发明的实施方式的不同模块、步骤和数据等,但是“第一”、“第二”等表述仅是为了在不同的模块、步骤和数据等之间进行区分,而并不表示特定的顺序或者重要程度。实际上,“第一”、“第二”等表述完全可以互换使用。
本公开提供一种数据同步方法,该方法应用于图1所示的数据同步系统中,分为三个层级,发起端为第一层级,一级存储端为第二层级,二级存储端为最高层级。在数据同步系统中,应该至少包括三个层级关系,其中,第二层级为中间层级,即图1中的一级存储端,可为多个,且在第一层级与最高层级之间可包含多级第二层级。其中,一级存储端分为:与发起端通信连接的一级存储端及,与发起端无通信连接的一级存储端。其中,发起端、一级存储端、二级存储端可为具有存储功能的软件、网站接口、设备等,设备可以为终端、数据库、服务器、基站、数据分发机等。其中终端,也可以称为用户设备(User Equipment,UE)、移动台(Mobile Station,MS)、移动终端(Mobile Terminal,MT)等,是一种向用户提供语音和/或数据连通性的设备,例如,终端可以是具有无线连接功能的手持式设备、车载设备等。目前,一些终端的举例为:智能手机(Mobile Phone)、口袋计算机(Pocket PersonalComputer,PPC)、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、笔记本电脑、平板电脑、可穿戴设备、或者车载设备等。
如图1所示的数据同步系统的工作过程如下:发起端向有通信连接的一级存储端发送同步数据请求,一级存储端接收该请求,并将需要同步的数据发送至二级存储端,二级存储端生成可向发起端同步数据的一级存储端名单列表,并发送至与发起端通信连接的一级存储端,与发起端通信连接的一级存储端将名单列表发送至发起端,发起端根据名单列表中一级存储端的个数,将需要同步的数据通过数据字段方式分为多个数据段,数据段数与名单列表中一存储端的个数相同,名单列表中的每个一级存储端对应一个数据段,发起端通过下载部分数据的请求将不同数据段发送至名单列表中记录的每个一级存储端,从名单列表中记录的多个一级存储端并行下载数据段对应的数据,完成需要同步数据的数据同步,实现多源端分段数据同步,减少数据同步所需时间。
可以理解的是,上述的发起端、一级存储端、二级存储端构成的三层级结构,可以分布于同一地区、不同地区,也可分布于同一个系统内,实现数据同步功能,上述的系统可以是终端、数据库、服务器、基站等需要同步数据的系统,关于终端的解释,参见上述内容,此处不做赘述。
上述的一级存储端中包括:与发起端通信连接的一存储端及与发起端无通信连接的一级存储端。而发起端请求与一级存储端同步数据,可为发起端请求与其通信连接的一级存储端,和与其无通信连接的一级存储端进行数据同步,或,发起端请求与其无通信连接的一级存储端进行数据同步,或,发起端请求与其通信连接的一级存储端进行数据同步。
图2为本公开实施例示出的一种数据同步方法的示意图,如图2所示,该数据同步方法应用于发起端中,包括步骤S110至步骤S140。
在步骤S110中,发送同步数据请求至通信连接的一级存储端。
在一例中,同步数据请求经由与发起端通信连接的一级存储端发送至二级存储端,二级存储端发送同步数据请求至与发起端无通信连接的一级存储端,二级存储端与一级存储端通信连接。
在一例中,数据标签只要满足唯一标记数据即可,可为数据的id或随机生成的唯一数据标识等,唯一数据标识通过标识生成规则生成,而标识生成规则只要满足标识数据的唯一性即可,无特殊规定。在一例中,同步数据请求中包括需要同步的数据的数据标签,数据标签为数据的唯一标记。一个数据标签对应于一个数据集。例如,发起端需要同步的数据为A公司X部门的人像数据集,其人像数据集标签可以为A-X。
在步骤S120中,接收名单列表。
在一例中,发起端接收一级存储端发送的名单列表,一级存储端的名单列表由二级存储端根据数据标签生成并发送。发起端通过名单列表可知能够下载数据的一级存储端,为实现发起端从多个一级存储端下载数据做准备工作。
在一例中,名单列表记录包含需要同步的数据的多个一级存储端。
在一例中,一级存储端可为:与发起端通信连接的一级存储端和与发起端无通信连接的一级存储端,或,与发起端无通信连接的一级存储端。
在一例中,二级存储端根据数据标签生成名单列表具体过程如下:
首先查找存在具有该数据标签的数据的一级存储端。一级存储端为与二级存储端通信连接的存储端,其中某些一级存储端上存在具有该数据标签的数据,某些不存在。其中,一级存储端包括与发起端通信连接的及无通信连接的一级存储端。与发起端通信连接的一级存储端会将自己都存储了哪些数据集、自己存储的数据集中的数据发生了何种变化同步给发起端(例如定期同步或在数据发生变化时同步),以使发起端知晓哪些数据可以用来同步。例如,与发起端通信连接的一级存储端W可在其存储的数据集A-X中新增了一条数据时,将数据变化信息同步给发起端。当发起端向与发起端通信连接的一级存储端W发送同步数据A-X的请求时,其希望同步的是与W中的A-X数据集完全一致的数据。可以理解的是,有些一级存储端中并不存在A-X数据集,因此首先需要找到存储有A-X的一级存储端。其次,二级存储端通过数据标签,校验与其通信连接的一级存储端中的数据状态信息,并查找各个一级存储端的数据状态信息中,存在数据标签表示的、发起端通信连接的一级存储端中的数据状态信息相同的数据,若存在,则将对应的一级存储端记录在名单列表中,直至校验完所有与二级存储端通信连接的一级存储端的数据状态信息,完成名单列表的生成。一级存储端会将自己的数据状态信息(例如数据的增加、删除、修改)同步给二级存储端(例如定期同步或在数据发生变化时同步)。在上一步,已经找到了具有A-X数据集的一级存储端,但是有些一级存储端的A-X数据集中的某条数据可能已经发生了与一级存储端W中不同的变化。例如,W中的A-X增加了一条,而另一一级存储端中虽然也有A-X,但可能删除、修改了一条或增加了另一条。因此,在上一步已经找到具有A-X的一级存储端的基础上,需要进一步查找哪些一级存储端上的A-X数据集具有和发起端通信连接的一级存储端上的A-X数据集相同的数据状态信息,据此生成数据集A-X同步的一级存储端名单列表。可以理解的是,名单列表中至少包括与发起端通信连接的一级存储端,当名单列表中只有与发起端通信连接的一级存储端时,其他一级存储端上没有与W中的A-X相同的数据集,发起端只能从W中进行同步。
在一例中,与发起端通信连接的一级存储端、无通信连接的一级存储端,可通过同步数据请求中的数据标签,确定需要向发起端上传的数据状态信息,数据状态信息为一级存储端存储的数据的变化信息,由与二级存储端通信连接的一级存储端发送至二级存储端。其中,数据的变化信息包括数据集的增加、删除或修改,数据集的修改又包括数据集中数据的增加、删除或修改。如,某个与二级存储端通信连接的一级存储端的第一数据集增加了10条数据,另一个与二级存储端通信连接的一级存储端的第一数据集删除了5条数据等。或某个与二级存储端通信连接的一级存储端增加10条数据后的第一数据集,另一个与二级存储端通信连接的删除5条数据后的第一数据集等,上述两种情况均属于变化信息。
在步骤S130中,根据名单列表,将数据分为多个数据段。
在一例中,发起端根据名单列表中记录的多个一级存储端,将数据分为多个数据段,每个数据段对应部分数据,每个数据段对应一个名单列表中记录的一级存储端。
在一例中,一级存储端为步骤S120中的一级存储端相同,此处不再赘述。
在一例中,发起端可通过数据的数据标号,将数据分为多个数据段,分配过程可为:发起端基于数据的数据标号个数随机分配数据标号或按照数据标号个数平均分配数据标号,而数据标号对应的部分数据即为数据段对应的部分数据。
在步骤S140中,根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步。
在一例中,数据段与名单列表中记录的一级存储端为相互对应关系,此对应关系体现在个数、同步部分数据等中,当数据段的个数与名单列表中记录的一级存储端的个数相同,此时,发起端从名单列表中的每个一级存储端下载部分数据,并行下载所有部分数据,完成数据同步,所需时间短。例如,三个一级存储端W1、W2、W3中具有数据集A-X,且W1、W2、W3中的A-X和与发起端通信连接的一级存储端W上的数据集A-X相同,因此名单列表中包括W、W1、W2、W3。此时可以把数据集A-X分为4个数据段(例如分别包括第1-50条,51-100条,101-150条,151-120条数据),分别从四个一级存储端并行同步。
在一例中,步骤S140中一级存储端与步骤S120中所述的一级存储端相同,此处不再赘述。
在一例中,发起端根据名单列表及多个数据段,为名单列表中每个一级存储端分配需要上传给发起端的对应数据段,分配方式如下:
发起端随机分配每个数据段至每个一级存储端,或依据数据段对应的数据标号的大小等,按照由大到小或由小到大的顺序,顺序分配每个数据段至每个一级存储端。发起端从每个一级存储端同时下载对应的部分数据,所有数据段下载完成之时,即为数据同步的完成之时。数据段个数只要大于1即可,例如数据段个数大于、小于或等于名单列表中记录的一级存储端个数。若数据段个数可与名单列表中记录的一级存储端个数相对应,每个名单列表中记录的一级存储端被分配一个数据段,此时发起端从每个一级存储端并行下载数据所需时间差短,即发起端下载完成数据所需时间短,且一级存储端利用率高。若数据段个数可大于名单列表中记录的一级存储端个数,则为每个数据端分配一个一级存储端,发起端从名单列表中的每个一级存储端并行下载数据段对应发部分数据后,再从先下载完成的一级存储端继续下载其余数据段对应的部分数据,直至所有部分数据下载完成,完成数据的同步。若数据段个数小于名单列表记录的一级存储端个数,则为每个数据端分配一个一级存储端,剩余的一级存储端不工作,发起端从分配了数据段的一级存储端并行下载数据段对应的部分数据,完成数据同步。
在上述发起端从一级存储端同步数据的过程中,根据具有与发起端所要同步的数据集相同数据集的存储端来生成名单列表,将一个完整数据拆分成多个数据段,并分配给名单列表中的多个一级存储端。一方面,由于同时从名单列表的多个一级存储端,即发起端的多个源端,同时下载对应的部分数据,与现有的数据同步方法,发起端从一个源端下载完整数据相比,节省了数据同步的时间,提高数据同步效率。另一方面,本公开中提供的数据同步方法适用于不同类别数据的同步,包括文件中的数据、数据集中的数据同步,适用范围更广泛。
在本公开一实施方式中,根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步,包括:
请求建立临时数据同步通道。
在一例中,由于一级存储端为与发起端无通信连接的一级存储端,无法直接与发起端通信,只有通过与发起端建立临时数据同步通道,才能与发起端通信。临时数据通道为发起端与多个一级存储端同步数据的临时通道,临时数据通道个数与名单列表中记录的与发起端无通信连接的一级存储端个数对应。对于与发起端通信连接的一级存储端,发起端可通过已有的通信通道,直接与通信连接的一级存储端数据通信,发起端基于名单列表,确定与发起端通信连接的一级存储端存在发起端请求同步的数据,直接发送下载部分数据请求至通信连接的一级存储端,上述一级存储端响应发起端的请求,允许发起端下载部分数据。
在一例中,临时数据同步通道为发起端与名单列表记录的、与发起端无通信连接的一级存储端同步数据的临时通道,临时数据同步通道个数与名单列表记录的、与发起端无通信连接的一级存储端的个数相对应。通过临时数据同步通道,发送下载部分数据的请求。
在一例中,下载部分数据的请求包含名单列表记录的、与发起端无通信连接的一级存储端对应的数据段,名单列表记录的、与发起端无通信连接的一级存储端基于数据标签及数据段,响应发起端发送的下载部分数据的请求。数据段个数只要大于1即可,例如数据段个数大于、小于或等于名单列表中记录的一级存储端个数。
并行下载多个部分数据,完成数据的同步。
在本公开一实施方式中,同步数据请求中还包括身份标签,身份标签为发起端的唯一身份标记,其中,
根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步,还包括:
向名单列表记录的、与发起端无通信连接的一级存储端发送身份标签,以使名单列表记录的、与发起端无通信连接的一级存储端接收并匹配发起端发送的身份标签,及二级存储端发送给名单列表记录的、与发起端无通信连接的一级存储端的身份标签,若相同,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立所述临时数据同步通道。通过此判断步骤,能够在建立临时数据同步通道之前,对请求临时数据同步通道的发起端的身份进行判断,若是请求建立的发起端则运行建立临时数据同步通道,若不是,则禁止建立临时数据同步通道,防止临时数据同步通道错误建立而造成的资源浪费,避免因为临时数据同步通道的错误连接关系,造成数据同步错误,还可避免由于已建立错误临时数据同步通道,无法与正确连接关系的发起端建立临时数据同步通道。
在一例中,发起端可通过以下方式生成身份标签:
发起端可把自身的id作为身份标签,或,随机生成一个身份标识作为身份标签,此身份标识为唯一的、由生成规则生成,此生成规则只要满足唯一标识发起端身份即可,无特殊规定。
上述过程能够避免发起端的身份与一级存储端接收的身份不同,导致发起端同步数据出错、且造成建立的临时数据同步通道浪费的情况出现。
在本公开一实施方式中,根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步,还包括:
接收临时令牌,其中,根据名单列表及多个数据段,分别从多个一级存储端并行下载对应的部分数据,还包括:
向名单列表记录的、与发起端无通信连接的一级存储端发送临时令牌,以使名单列表记录的、与发起端无通信连接的一级存储端接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道。例如,查找临时令牌中建立临时数据他通道的时间的规定,如发起端请求建立临时数据同步通道的时间在3分钟内,允许建立临时数据同步通道,若超过三分钟,即使身份标签匹配,但是临时令牌也不允许名单列表记录的、与发起端无通信连接的一级存储端,与发起端建立临时数据同步通道,保证数据同步的安全性。
在一例中,身份标签匹配成功后,名单列表记录的、与发起端无通信连接的一级存储端即允许与发起端建立所述临时数据同步通道;在另一例中,临时令牌校验成功后,名单列表记录的、与发起端无通信连接的一级存储端即允许与发起端建立所述临时数据同步通道;在另一例中,只有身份标签匹配成功且临时令牌校验成功后,名单列表记录的、与发起端无通信连接的一级存储端才允许与发起端建立所述临时数据同步通道。
在一例中,临时令牌由与发起端通信连接的一级存储端生成并发送至发起端,经由二级存储端发送临时令牌至与名单列表记录的、与发起端无通信连接的一级存储端。临时令牌中可记载停止更新数据的规定,二级存储端通过向名单列表记录的多个一级存储端发送锁定状态指令,根据锁定状态指令,告知名单列表中的多个一级存储端查找临时令牌中记载的停止更新数据的规定,根据临时令牌中记载的停止更新数据的规定,禁止名单列表中的多个一级存储端更新数据,使需要同步的数据达到一个锁定状态,防止在发起端从名单列表中的多个一级存储端同步数据时,由于数据更新造成的更新错误,保证数据同步过程的稳定性。在一例中,一级存储端与步骤S120中所述的一级存储端相同,此处不再赘述。
在本公开一实施方式中,图3为本公开提供的第二种数据同步方法,该数据同步方法应用于发起端中,包括步骤S210至步骤S250。在步骤S210至步骤S250中,步骤S210、步骤S220、步骤S230、步骤S240与图2所示数据同步方法中的步骤S110、步骤S120、步骤S130、步骤S140分别相同,在此不再赘述。
在步骤S250中,发送删除通知。
删除通知用于删除临时数据同步通道,在发起端从名单列表中的、无通信连接的一级存储端下载完成对应部分数据后提出,删除临时数据同步通道,通过发起端断开数据同步请求实现。删除临时数据同步通道的目的是为了节省资源,因为发起端与无通信连接的一级存储端建立数据同步通道是消耗资源的。其次,为了保障数据同步的安全性。
在本公开一实施方式中,本公开提供的第三种数据同步方法的示意图,如图4所示,该数据同步方法应用于发起端中,包括步骤S310至步骤S360。图4所示的数据同步方法中,步骤S320、步骤S330、步骤S340、步骤S350、步骤S360,与图3所示数据同步方法中的步骤S210、步骤S220、步骤S230、步骤S240、步骤S250、分别相同,在此不再赘述。
在步骤S310中,生成数据标签,和/或生成身份标签。
发起端基于步骤S110中的数据标签生成方式及应用于发起端的第二个实施例中的身份标签生成方式,生成数据标签及身份标签,并发送至与发起端通信连接的一级存储端,与发起端通信连接的一级存储端通过二级存储端,发送数据标签及身份标签至名单列表记录的、与发起端无通信连接的一级存储端。
图5为本公开实施例示出的一种数据同步方法的示意图,如图5所示,该数据同步方法应用于与发起端以及二级存储端分别通信连接的一级存储端中,包括步骤S410至步骤S440。
在步骤S410中,接收由发起端发出的同步数据请求。
在本公开中,同步数据请求包括需要同步数据的数据标签,数据标签为数据的唯一标记,发起端生成数据标签的规则,与应用于发起端的数据同步方法的第二种优选的实施方式中所述的数据标签生成规则相同,此处不再赘述。在步骤S420中,发送同步数据请求至二级存储端。
在一例中,二级存储端将同步数据请求发送至与发起端无通信连接的一级存储端。
在一例中,二级存储端将同步数据请求发送至与发起端无通信连接的、名单列表中记录的一级存储端,用以与发起端无通信连接的一级存储端通过同步数据请求中的数据标签,确定发起端请求同步的数据。
在步骤S430中,接收由二级存储端发出的名单列表。
在一例中,名单列表由二级存储端根据数据请求中的数据标签生成。
在一例中,名单列表记录包含需要同步的数据的多个一级存储端,此处的一级存储端与步骤S120中所述的一级存储端相同,此处不再赘述。
在一例中,二级存储端根据数据标签生成名单列表具体过程与步骤S120中所述过程一致,此处不再赘述。需要强调的是,在二级存储端生成名单列表过程中,需要校验与其通信连接的一级存储端中的数据状态信息,数据状态信息为一级存储端存储的数据的变化信息,此处的数据状态信息、数据的变化信息的定义与步骤S120中所述的定义一致,此处不再赘述。
在步骤S440中,发送名单列表至发起端。
在一例中,发送名单列表至发起端,以使发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,并使发起端分配一个数据段至每个名单列表记录的一级存储端,并根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。将数据分为多个数据段过程与步骤S130中所述的数据分段过程一致,此处不再赘述,将需要同步的数据分为多个数据段的目的是,为名单列表中每个一级存储端分配需要上传给发起端的对应数据段,即,为名单列表中每个一级存储端分配需要上传给发起端的部分数据,实现发起端从名单列表中的多个一级存储端,即发起端的多个源端,同时下载对应的部分数据,节省了数据同步的时间,提高数据同步效率。将数据段分配至名单列表中的一级存储端的分配方式,与步骤S140中所述的数据段分配方式一致,此处不再赘述。
在一例中,数据段分配一级存储端的分配方式,与步骤S140中所述分配方式一致,此处不再赘述。
在一例中,步骤S440中的一级存储端与步骤S120中所述的一级存储端相同,此处不再赘述。在本公开一实施方式中,同步数据请求还包括身份标签,其中,身份标签为发起端的唯一身份标记,名单列表中记录的多个一级存储端通过匹配二级存储端发送的身份标签与发起端发请求同步数据时发送的身份标签,若相同,允许与发起端同步数据,此处的一级存储端与步骤S120中所述的一级存储端一致,此处不再赘述。
在一例中,若名单列表的多个一级存储端中,存在与发起端无通信连接的一级存储端,则一级存储端通过匹配二级存储端发送的身份标记与发起端发起请求建立数据同步通道时发送的身份标记,若二者相同,则一级存储端允许与发起端建立临时数据同步通道,通过临时数据同步通道与发起端同步数据,临时数据同步通道为发起端与无通信连接的一级存储端同步数据的临时通道,而临时数据同步通道的建立过程,与步骤S250至步骤S270所述的建立过程一致,此处不再赘述。
在一例中,身份标签的生成规则,与在应用于发起端的数据同步方法的第二种优选实施方式所述的生成规则一致,此处不再赘述。
在本公开一实施方式中,本公开提供的一种数据同步方法,该数据同步方法应用于与发起端以及二级存储端分别通信连接的一级存储端中,该数据同步方法还包括:向二级存储端发送数据状态信息,其中,数据状态信息为与发起端以及二级存储端分别通信连接的一级存储端存储的所有数据的变化信息,以使二级存储端根据数据标签和数据状态信息生成名单列表。数据状态信息的定义方式与步骤S120中所述的定义方式一致,此处不再赘述。其中,此处的一级存储端与步骤S120中所述的一级存储端相同,此处不再赘述。
在一例中,与发起端通信连接的一级存储端、无通信连接的一级存储端,均将自身的数据状态信息发送至二级存储端,通过数据状态信息,二级存储端可知道与发起端通信连接的一级存储端的数据更新状态及其存储的数据。
在本公开一实施方式中,如图6为本公开提供的第二种数据同步方法的示意图,如图6所示,该数据同步方法应用于与发起端以及二级存储端分别通信连接的一级存储端中,包括步骤S510至步骤S570。图6所示的数据同步方法中,步骤S510、步骤S520、步骤S530和步骤S540与图5所示数据同步方法中的步骤S410、步骤S420、步骤S430和步骤S440分别相同,在此不再赘述。
在步骤550中,生成临时令牌。
在一例中,临时令牌结合数据标签,可禁止名单列表记录的多个一级存储端中的数据更新,还用于保证数据同步的安全性。
在步骤S560中,发送临时令牌至发起端以及二级存储端。
在一例中,与发起端通信连接的一级存储端通过同步数据请求,生成并发送临时令牌至发起端,同时,通过同步数据请求或与同步数据请求一起,将临时令牌发送至二级存储端,二级存储端将其发送至名单列表中的、与发起端无通信连接的一级存储端。临时令牌可记载临时数据同步通道的有效时间,若超过有效时间,则临时数据同步通道无效,无法实现发起端从与其无通信连接的一级存储端下载部分数据,保证提供临时数据同步通道同步部分数据的安全性。
在步骤S570中,停止更新数据。
在一例中,与发起端通信连接的一级存储端,根据临时令牌及数据标签,禁止数据的更新,临时令牌中包括禁止更新数据的规定。在一例中,禁止更新的数据为和与发起端通信连接的一级存储端接收到的同步数据请求中的数据标签一致的数据。
图7本公开实施例示出的一种数据同步方法的示意图,如图7示,该数据同步方法应用于与发起端无通信连接的一级存储端中,包括步骤S610至步骤S620。
在步骤S610中,响应于发起端发出的建立临时数据同步通道的请求,与发起端建立临时数据同步通道。
在本公开中,临时数据同步通道的建立过程,与步骤S250至S270所述的建立过程一致,此处不再赘述。
在步骤S620,通过临时数据同步通道,响应发起端发出的下载部分数据的请求。
在一例中,部分数据对应于发起端请求下载的数据的一个数据段中的数据,数据段为部分需要同步的数据。数据分成数据段的方式及数据段分配至名单列表中的多个一级存储端的分配过程,在步骤S120、步骤S140中分别记载,此处不再赘述。
通过上述过程,发起端将一个完整数据拆分成多个数据段,并分配给包含需要同步的数据的多个一级存储端。一方面,由于同时从多个一级存储端,即发起端的多个源端,同时下载对应的部分数据,与现有的数据同步方法,发起端从一个源端下载完整数据相比,节省了数据同步的时间,提高数据同步效率。另一方面,本公开中提供的数据同步方法适用于所有数据的同步,包括文件中的数据、数据集中的数据同步,适用范围更广泛。
在本公开一实施方式中,本公开提供的一种数据同步方法,该数据同步方法应用于与发起端无通信连接的一级存储端中,该方法还包括:接收由二级存储端发送的同步数据请求,以及匹配发起端发送的身份标签与同步数据请求中的身份标签,若相同,允许与发起端建立临时数据同步通道。
在一例中,发起端经由通信连接的一级存储端发送同步数据请求至二级存储端,数据同步请求包括数据标签及身份标签,数据标签、身份标签由发起端生成,数据标签为数据的唯一标记,身份标签为发起端的唯一身份标记。
在一例中,数据标签由发送端生成,数据标签为需要同步数据的唯一标记,数据标签的生成方式与步骤S110中所述的生成方式一致,此处不再赘述。其中,一级存储端根据数据标签可知发起端需要同步的数据,二级存储端根据数据标签可生成名单列表,名单列表记录存储有需要同步的数据的多个一级存储端,名单列表的生成过程与步骤S120中所述的生成过程相同,此处不再赘述。其中,一级存储端为与发起端通信连接的一级存储端、与发起端无通信连接的一级存储端。
在一例中,身份标签为发起端的唯一身份标记,用于识别发起端的身份,与发起端无通信连接的一级存储端匹配二级存储端发送的身份标签与发起端请求建立临时数据同步通道时发送的身份标签,若二者一致,与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,其中,二级存储端通过同步数据请求或与同步数据请求一起,将身份标签发送至一级存储端。
在一例中,发起端在请求建立临时数据同步通道时,发送其身份标签至发起端无通信连接的一级存储端。临时通道的生成步骤与应用于发起端的数据同步方法的第一个实施例中所述的临时通道生成步骤相同,此处不再赘述。
在本公开一实施方式中,本公开提供的一种数据同步方法,该数据同步方法应用于与发起端无通信连接的一级存储端中,该方法还包括:接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道。
在一例中,临时令牌由与发起端通信连接的一级存储端生成,并发送至发起端及二级存储端。
在一例中,临时令牌的作用与应用于发起端的第三个实施例中所述的临时令牌的作用相同,此处不再赘述。
在本公开一实施方式中,本公开提供的一种数据同步方法,该数据同步方法应用于与发起端无通信连接的一级存储端中,该方法还包括:根据临时令牌及数据标签,停止更新数据。
在一例中,临时令牌中包括禁止更新数据的规定,通过禁止更新需要特别的数据,保证数据同步的稳定性。
在本公开一实施方式中,本公开提供的一种数据同步方法,该数据同步方法应用于与发起端无通信连接的一级存储端中,该方法还包括:响应于发起端发送的删除通知,删除临时数据同步通道。
在一例中,删除通知为发起端下载完成部分数据后生成。
删除临时数据同步通道,通过发起端断开数据同步请求实现,临时通道的断开,是为了节省资源,因为发起端与一级存储端建立临时数据同步通道是消耗资源的。其次,为了保障数据同步的安全。
图8为本公开实施例示出的一种数据同步方法的示意图,如图8所示,该数据同步方法应用于二级存储端中,包括步骤S710至步骤S740。
在步骤S710中,接收同步数据请求。
在一例中,同步数据请求由发起端经由发起端通信连接的一级存储端发送至二级存储端,同步数据请求包括数据标签,数据标签为数据的唯一标记。
在一例中,同步数据请求包括需要同步的数据的数据标签,其中,数据标签由发起端生成,数据标签为数据的唯一标记,其中,发起端生成数据标签的方式与应用于发起端的一种数据同步方法的第二种优选中所述的数据标签生成方式相同,此处不再赘述。
在步骤S720中,接收一级存储端发送的数据状态信息。
在一例,数据状态信息为一级存储端的数据状态变化信息。
在步骤S730中,基于数据标签及数据状态信息,生成名单列表。
在一例中,名单列表记录存储有数据的多个一级存储端。
在一例中,二级存储端生成名单列表的过程,与步骤S120中所述的二级存储端生成名单列表的过程相同,此处不再赘述。
在一例中,名单列表中记录存储有需要同步的数据的多个一级存储端,名单列表中记录的多个一级存储端为可与发起端同步数据的一级存储端。
在一例中,一级存储端发送名单列表至发起端,发起端根据名单列表,将需要同步的数据分为多个数据段,发起端将需要同步的数据分为多个数据段的分配方式,与步骤S130中记载的所述数据段分配方式相同,此处不再赘述,其中,每个数据段对应部分数据,发起端分配多个数据段至名单列表中记录的每个一级存储端中,发起端分配数据段至多个一级存储端的方式与步骤S140中所述的分配方式相同,此处不再赘述。
在一例中,发起端通过与无通信连接的一级存储端建立的临时数据同步通道,下载每个一级存储端对应部分数据,临时数据同步通道的建立过程与步骤应用于发起端的数据同步方法的第一个实施例所述的建立过程相同,此处不再赘述。对于与发起端通信连接的一级存储端,发起端通过与一级存储端已有的通信通道,下载一级存储端对应的数据。
在步骤S740中,发送名单列表至发起端通信连接的一级存储端,并经由发起端通信连接的一级存储端发送至发起端。
在一例中,发起端根据单列表,将数据分为多个数据段,每个数据段对应部分数据,发起端分配一个数据段至每个名单列表记录的一级存储端,发起端根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
在发起端从一级存储端同步数据的过程中,将一个完整数据拆分成多个数据段,并分配给名单列表中记录的多个一级存储端。一方面,由于同时从多个一级存储端,即发起端的多个源端,同时下载对应的部分数据,与现有的数据同步方法,发起端从一个源端下载完整数据相比,节省了数据同步的时间,提高数据同步效率。另一方面,本公开中提供的数据同步方法适用于所有数据的同步,包括文件中的数据、数据集中的数据同步,适用范围更广泛。
在本公开一实施方式中,本公开提供的一种数据同步方法的示意图,该数据同步方法应用于与一级存储端通信连接的二级存储端中,该方法还包括:发送数据标签及身份标签。
在本公开中,二级存储端将数据标签发送至名单列表中记录的多个一级存储端,其中,数据标签为需要同步的数据的唯一标记,数据标签的生成规则与应用于发起端的一种数据同步方法的第二种优选中所述的数据标签生成方式相同中所述的生成规则相同,此处不再赘述。通过数据标签,名单列表中的多个一级存储端可知需要同步的数据,一级存储端通过需要同步的数据,可以找到发起端发送的数据段对应的部分数据,为名单列表中的每个一级存储端向发起端同步部分数据做准备。
在本公开中,二级存储端根据名单列表将身份标签发送至名单列表记录存储有需要同步的数据的多个一级存储端,其中,身份标签为发起端的唯一身份标记,在发起端生成,身份标签生成规则与应用于发起端的同步数据请求的第三种优选的实施方式中记载的身份标签生成规则相同,此处不再赘述,其中,身份标签用于名单列表中记录的、与发起端无通信连接的一级存储端识别发起端的身份,以与发起端建立临时数据同步通道。
在本公开一实施方式中,本公开提供的一种数据同步方法,该数据同步方法应用于与一级存储端通信连接的二级存储端中,该方法还包括:接收临时令牌。
在本公开中,二级存储端接收临时令牌,其中,临时令牌为与发起端通信连接的一级存储端生成,并通过同步数据请求或与同步数据请求一起,发送至二级存储端、发起端,二级存储端根据名单列表,将临时令牌发送至名单列表记录存储有数据的、与发起端无通信连接的一级存储端,其中,临时令牌的作用与应用于发起端的数据同步方法的第三个实施例所述的临时令牌作用相同,此处不再赘述。
在本公开一实施方式中,如图9为本公开提供的第二种数据同步方法的示意图,如图9所示,该数据同步方法应用于二级存储端中,包括步骤S810至步骤S850。图9所示的数据同步方法中,步骤S810、步骤S820、步骤S830、步骤S840与图8所示数据同步方法中的步骤S710、步骤S720、步骤S730、步骤S740分别相同,在此不再赘述。
在步骤S850中,发送同步数据请求至名单列表记录的、与发起端无通信连接的一级存储端。
在一例中,同步数据请求还包括身份标签,身份标签为发起端的唯一身份标记,用于识别发起端的身份,发起端无通信连接的一级存储端,匹配发起端发送的身份标签与同步数据请求中的身份标签,若相同,名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,临时数据同步通道为发起端与发起端无通信连接的一级存储端同步数据的临时通道,临时数据同步通道个数与数据段个数相对应。
在本公开一实施方式中,如图10为本公开提供的第三种数据同步方法的示意图,如图10所示,该数据同步方法应用于二级存储端中,包括步骤S910至步骤S970。图10所示的数据同步方法中,步骤S910、步骤S920、步骤S930、步骤S940、步骤S950与图8所示数据同步方法中的步骤S810、步骤S820、步骤S830、步骤S840、步骤S850分别相同,在此不再赘述。
在步骤S960中,接收发起端通信连接的一级存储端生成并发送的临时令牌。
在一例中,临时令牌结合数据标签,可禁止名单列表记录的多个一级存储端中所述数据的更新,临时令牌还用于保证发起端从名单列表记录的多个一级存储端下载部分数据的安全性。
在步骤S970中,发送临时令牌至名单列表记录的、与发起端无通信连接的一级存储端。
在一例中,名单列表中的多个一级存储端通过查找临时令牌中记载的停止更新数据的规定,根据临时令牌中记载的停止更新数据的规定,禁止名单列表中的多个一级存储端更新数据,使需要同步的数据达到一个锁定状态,防止在发起端从名单列表中的多个一级存储端同步数据时,由于数据更新造成的更新错误,保证数据同步过程的稳定性。
图11为本公开实施例示出的一种数据同步方法的示意图,如图11所示,该数据同步方法应用于发起端、一级存储端、二级存储端中,包括步骤S1010至步骤S1220。
在步骤S1010中,一级存储端发送数据状态信息至二级存储端。
在步骤S1020中,发起端生成数据标签及身份标签。
在步骤S1030中,发起端发送同步数据请求至与发起端通信连接的一级存储端,数据同步请求中包括数据标签及身份标签。
在步骤S1040中,与发起端通信连接的一级存储端生成临时令牌。
在步骤S1050中,与发起端通信连接的一级存储端发送临时令牌及同步数据请求至二级存储端。
在步骤S1060中,二级存储端根据数据同步请求及一级存储端的数据状态信息,生成名单列表。
在步骤S1070中,二级存储端发送名单列表至与发起端通信连接的一级存储端。
在步骤S1080中,二级存储端发送同步数据请求及临时令牌至与发起端无通信连接的一级存储端。
在步骤S1090中,一级存储端查找临时令牌中停止更新数据的规定,进而一级存储端停止数据的更新。
在步骤S1100中,与发起端通信连接的一级存储端发送名单列表及临时令牌至发起端。
在步骤S1110中,发起端根据名单列表中记录的存储需要同步数据的多个一级存储端,将需要同步的数据分为多个数据段,数据段个数与,名单列表中记录的存储需要同步数据的多个一级存储端的个数相同。
在步骤S1120中,发起端分配数据段至每个名单列表中记录的一级存储端,其中,每个一级存储端中分配一个数据段。
在步骤S1130中,发起端向与发起端无通信连接的一级存储端发送建立临时数据同步通道请求,其中,建立临时数据同步通道请求中包含身份标签。
在步骤S1140中,与发起端无通信连接的一级存储端,匹配同步数据请求中的身份标签与,发起端发送的建立临时数据同步通道请求中的身份标签,若二者相同,与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道。
在步骤S1150中,与发起端通信连接的一级存储端,向名单列表记录的、与发起端无通信连接的一级存储端发送临时令牌,以使名单列表记录的、与发起端无通信连接的一级存储端接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,若未校验成功,即使身份标签验证通过,也不允许发起端与名单列表记录的、与发起端无通信连接的一级存储端建立临时数据同步通道。
在步骤S1160中,与发起端无通信连接的一级存储端,发送建立临时数据同步通道请求至发起端。
在步骤S1170中,名单列表记录的、与发起端无通信连接的一级存储端接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验成功,名单列表记录的、与发起端无通信连接的一级存储端判断允许与发起端建立临时数据同步通道。
在步骤S1180中,发起端建立临时数据同步通道。
在步骤S1190中,向一级存储端发送下载部分数据请求。
在步骤S1200中,一级存储端响应发起端的下载部分数据请求。
在步骤S1210中,发起端同时从多个一级存储端下载对应的部分数据,所有部分数据下载完成,即完成数据同步,其中,发起端通过临时数据同步通道从无通信连接的一级存储端同步数据,发起端通过已有通信通道,与发起端通信连接的一级存储端同步数据。
在步骤S1220中,当发起端从每个临时数据同步通道下载完成对应部分数据后,向发起端无通信连接的一级存储端发送删除临时数据同步通道通知。
在步骤S1230中,与发起端无通信连接的一级存储端响应发起端的删除临时数据同步通道通知,断开临时数据同步通道。
基于与适用于发起端的一种数据同步方法相同的发明构思,本公开实施例还提供一种文件包读取装置,该装置应用于发起端中。
图12示出了本公开实施例提供的,应用于发起端中的一种数据同步装置的示意图。如图12所示,一种数据同步装置包括:
发送单元110,用于发送同步数据请求至通信连接的一级存储端,其中,同步数据请求经由与发起端通信连接的一级存储端发送至二级存储端,二级存储端发送同步数据请求至与发起端无通信连接的一级存储端,二级存储端与一级存储端通信连接,同步数据请求中包括数据的数据标签,数据标签为数据的唯一标记。
接收单元120,用于接收名单列表,其中,名单列表记录存储有数据的多个一级存储端,名单列表由二级存储端根据数据标签生成,并经由发起端通信连接的一级存储端发送至发起端。
分配单元130,用于根据名单列表,将数据分为多个数据段,其中,每个数据段对应部分数据,发起端分配一个数据段至每个名单列表记录的一级存储端。
下载单元140,用于根据名单列表及多个数据段,分别从每个名单列表记录的一级存储端并行下载该一级存储端所对应的部分数据,完成数据的同步。
在本公开一实施方式中,下载单元140还包括:
接收临时令牌,其中,临时令牌由与发起端通信连接的一级存储端生成并发送至发起端,经由二级存储端发送临时令牌至与名单列表记录的、与发起端无通信连接的一级存储端,临时令牌用于禁止名单列表记录的多个一级存储端中数据的更新,还用于保证数据同步的安全性;其中,根据名单列表及多个数据段,分别从所述一级存储端并行下载对应的部分数据,还包括:
向名单列表记录的、与发起端无通信连接的一级存储端发送临时令牌,以使名单列表记录的、与发起端无通信连接的一级存储端接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道。
在本公开一实施方式中,下载单元140包括:
请求建立临时数据同步通道,其中,临时数据同步通道为发起端与名单列表记录的、与发起端无通信连接的一级存储端同步数据的临时通道,临时数据同步通道个数与名单列表记录的、与发起端无通信连接的一级存储端的个数相对应;
通过临时数据同步通道,发送下载部分数据的请求,其中,下载部分数据的请求包含名单列表记录的、与发起端无通信连接的一级存储端对应的数据段,名单列表记录的、与发起端无通信连接的一级存储端基于数据标签及数据段,响应发起端发送的下载部分数据的请求;
并行下载多个部分数据,完成数据的同步。
在本公开一实施方式中,下载单元140还包括:
向名单列表记录的、与发起端无通信连接的一级存储端发送身份标签,以使名单列表记录的、与发起端无通信连接的一级存储端接收并匹配发起端发送的身份标签,及二级存储端发送给名单列表记录的、与发起端无通信连接的一级存储端的身份标签,若相同,则名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,其中,同步数据请求中还包括身份标签,身份标签为发起端的唯一身份标记。
在本公开一实施方式中,发送单元110还用于:
发送删除通知,其中,删除通知用于在数据同步完成后删除临时数据同步通道。
在本公开一实施方式中,图13示出了本公开实施例提供的,应用于发起端中的第二种数据同步装置的示意图。如图13所示,一种数据同步装置还包括:生成单元150,用于生成数据标签,和/或生成身份标签。
图14示出了本公开实施例提供的,应用于与发起端以及二级存储端分别通信连接的一级存储端中的一种数据同步装置的示意图。如图14所示,一种数据同步装置包括:
接收单元210,用于接收由发起端发出的同步数据请求及由二级存储端发出的名单列表,其中,同步数据请求包括需要同步数据的数据标签,数据标签为数据的唯一标记,名单列表记录存储有数据的多个一级存储端,名单列表由二级存储端根据数据标签生成。
发送单元220,用于发送同步数据请求至二级存储端及发送名单列表至发起端,以使发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,并使发起端分配一个数据段至每个名单列表记录的一级存储端,并根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
在本公开一实施方式中,接收单元210中的名单列表由二级存储端根据数据标签生成,名单列表生成过程与步骤120中所述的名单列表生成过程一致,此处不再赘述。
在本公开一实施方式中,接收单元210中的同步数据请求还包括身份标签,其中,身份标签的生成规则与应用于发起端的数据同步方法的第三个优选实施例中所述的内容一致,此处不再赘述,身份标签为发起端的唯一身份标记,用于识别发起端的身份,以与发起端建立临时数据同步通道,临时数据同步通道为发起端与多个一级存储端同步数据的临时通道,临时数据同步通道的生成过程与应用于发起端的数据同步方法的第一实施例所述的内容一致,此处不再赘述。
在本公开一实施方式中,发送单元220还用于:
发送同步数据请求至二级存储端及发送名单列表至发起端,以使发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,并使发起端分配一个数据段至每个名单列表记录的一级存储端,并根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步,数据段变化信息的定义,与步骤S120所定义的相同,此处不再赘述。
图15示出了本公开实施例提供的,应用于与发起端以及二级存储端分别通信连接的一级存储端中的第二种数据同步装置的示意图。如图15所示,一种数据同步装置还包括:
生成单元230,用于生成临时令牌,其中,临时令牌结合数据标签,可禁止名单列表记录的多个一级存储端中的数据更新,还用于保证数据同步的安全性,此时,发送单元210还用于发送临时令牌至发起端以及二级存储端,有关临时令牌的作用与应用于发起端的数据同步方法中的第三个实施例中描述的作用一致,此处不再赘述。
图16示出了本公开实施例提供的,应用于与发起端以及二级存储端分别通信连接的一级存储端中的第三种数据同步装置的示意图。如图16所示,一种数据同步装置还包括:
控制单元240,应用停止更新数据,其中,与发起端通信连接的一级存储端,根据临时令牌及数据标签,禁止数据的更新,临时令牌中包括禁止更新数据的规定。
基于与适用于与二级存储端通信连接的一级存储端的一种数据同步方法相同的发明构思,本公开实施例提供第三种文件包读取装置,该装置应用于与二级存储端通信连接的一级存储端中。
图17示出了本公开实施例提供的,应用于与发起端无通信连接的一级存储端中的一种数据同步装置的示意图。如图17所示,一种数据同步装置包括:
建立通道单元310,用于响应于发起端发出的建立临时数据同步通道的请求,与发起端建立临时数据同步通道。
发送单元320,用于响应发起端发出的下载部分数据的请求,其中,部分数据对应于一个数据段中的数据,数据段为部分需要同步的数据。临时数据同步通道的建立过程与应用于发起端的数据同步方法的第一个实施例所述的内容一致,此处不再赘述。
图18示出了本公开实施例提供的,应用于与发起端无通信连接的一级存储端中的第二种数据同步装置的示意图。如图18所示,一种数据同步装置还包括:
接收单元330,用于接收由二级存储端发送的同步数据请求,其中,发起端经由通信连接的一级存储端发送同步数据请求至二级存储端,数据同步请求包括数据标签及身份标签,数据标签、身份标签由发起端生成,数据标签为数据的唯一标记,身份标签为发起端的唯一身份标记,匹配发起端发送的身份标签与同步数据请求中的身份标签,若相同,允许与发起端建立临时数据同步通道,发起端在请求建立临时数据同步通道时,发送其身份标签至发起端无通信连接的一级存储端。
在本公开一实施方式中,接收单元330还用于:
接收并校验发起端发送的临时令牌,及二级存储端发送的临时令牌,若校验通过,则发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,其中,临时令牌由与发起端通信连接的一级存储端生成,并发送至发起端及二级存储端。身份标签的生成规则与应用于发起端的数据同步方法的第二个实施例所述内容一致,此处不再赘述。
图19示出了本公开实施例提供的,应用于与发起端无通信连接的一级存储端中的第三种数据同步装置的示意图。如图19所示,一种数据同步装置还包括:
控制单元340,用于根据临时令牌及数据标签,停止更新数据,其中,临时令牌中包括禁止更新数据的规定。
在本公开一实施方式中,发送单元320还用于:
发送数据状态信息至二级存储端,其中,数据状态信息为与发起端无通信连接的一级存储端存储数据的状态变化信息,与发起端通信连接的一级存储端发送数据状态信息至二级存储端,二级存储端根据数据标签和数据状态信息生成名单列表,名单列表记录存储有数据的多个一级存储端,并经由与发起端通信连接的一级存储端发送至发起端。
在本公开一实施方式中,接收单元320还用于:
接收锁定状态指令,其中,锁定状态指令由二级存储端根据名单列表生成并发送至名单列表中的一级存储端,通过临时令牌中记载停止更新数据的规定,结合数据标签,禁止一级存储端更新数据。有关临时令牌的作用与应用于发起端的数据同步方法的第三个实施例介绍的临时令牌作用一致,此处不再赘述。
在本公开一实施方式中,控制单元340还用于:
响应于发起端发送的删除通知,删除临时数据同步通道,其中,删除通知为发起端下载完成部分数据后生成。
基于与适用于与一级存储端通信连接的二级存储端的一种数据同步方法相同的发明构思,本公开实施例提供第四种文件包读取装置,该装置应用于与一级存储端通信连接的二级存储端中。
图20示出了本公开实施例提供的,应用于二级存储端中的一种数据同步装置的示意图。如图20所示,一种数据同步装置包括:
接收单元410,用于接收同步数据请求及一级存储端发送的数据状态信息,其中,同步数据请求由发起端经由发起端通信连接的一级存储端发送至二级存储端,同步数据请求包括数据标签,数据标签为数据的唯一标记,数据状态信息为一级存储端的数据状态变化信息。
生成单元420,用于基于数据标签及数据状态信息,生成名单列表,其中,名单列表记录存储有数据的多个一级存储端。
发送单元430,用于发送名单列表至发起端通信连接的一级存储端,并经由发起端通信连接的一级存储端发送至发起端,其中,发起端根据名单列表,将数据分为多个数据段,每个数据段对应部分数据,发起端分配一个数据段至每个名单列表记录的一级存储端,发起端根据名单列表及多个数据段,分别从名单列表记录的多个一级存储端并行下载对应的部分数据,完成数据的同步。
在本公开一实施方式中,发送单元430还用于:
发送数据标签,根据名单列表将数据标签发送至名单列表记录存储需要同步的数据的多个一级存储端。
在本公开一实施方式中,发送单元430还用于:
发送同步数据请求至名单列表记录的、与发起端无通信连接的一级存储端,其中,同步数据请求还包括身份标签,身份标签为发起端的唯一身份标记,用于识别发起端的身份,发起端无通信连接的一级存储端,匹配发起端发送的身份标签与同步数据请求中的身份标签,若相同,名单列表记录的、与发起端无通信连接的一级存储端允许与发起端建立临时数据同步通道,临时数据同步通道为发起端与发起端无通信连接的一级存储端同步数据的临时通道,临时数据同步通道个数与数据段个数相对应。
在本公开一实施方式中,接收单元410还用于:
接收发起端通信连接的一级存储端生成并发送的临时令牌,其中,临时令牌结合数据标签,可禁止名单列表记录的多个一级存储端中数据的更新,临时令牌还用于保证发起端从名单列表记录的多个一级存储端下载部分数据的安全性。此时,发送单元430还用于:发送临时令牌至名单列表记录的、与发起端无通信连接的一级存储端。
装置中的各个模块所实现的功能与上文描述的方法中的步骤相对应,其具体实现和技术效果请参见上文对于方法步骤的描述,在此不再赘述。
如图21所示,本发明的一个实施方式提供了一种电子设备50。其中,该电子设备50包括存储器510、处理器520、输入/输出(Input/Output,I/O)接口530。其中,存储器510,用于存储指令。处理器520,用于调用存储器510存储的指令执行本发明实施例的用于数据同步方法。其中,处理器520分别与存储器510、I/O接口530连接,例如可通过总线系统和/或其他形式的连接机构(未示出)进行连接。存储器510可用于存储程序和数据,包括本发明实施例中涉及的用于数据同步的程序,处理器520通过运行存储在存储器510的程序从而执行电子设备50的各种功能应用以及数据处理。
本发明实施例中处理器520可以采用数字信号处理器(Digital SignalProcessing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现,所述处理器520可以是中央处理单元(Central Processing Unit,CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元中的一种或几种的组合。
本发明实施例中的存储器510可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(Random Access Memory,RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(Read-OnlyMemory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD)等。
本发明实施例中,I/O接口530可用于接收输入的指令(例如数字或字符信息,以及产生与电子设备50的用户设置以及功能控制有关的键信号输入等),也可向外部输出各种信息(例如,图像或声音等)。本发明实施例中I/O接口530可包括物理键盘、功能按键(比如音量控制按键、开关按键等)、鼠标、操作杆、轨迹球、麦克风、扬声器、和触控面板等中的一个或多个。
在一些实施方式中,本发明提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在由处理器执行时,执行上文所述的任何方法。
尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。
本发明的方法和装置能够利用标准编程技术来完成,利用基于规则的逻辑或者其他逻辑来实现各种方法步骤。还应当注意的是,此处以及权利要求书中使用的词语“装置”和“模块”意在包括使用一行或者多行软件代码的实现和/或硬件实现和/或用于接收输入的设备。
此处描述的任何步骤、操作或程序可以使用单独的或与其他设备组合的一个或多个硬件或软件模块来执行或实现。在一个实施方式中,软件模块使用包括包含计算机程序代码的计算机可读介质的计算机程序产品实现,其能够由计算机处理器执行用于执行任何或全部的所描述的步骤、操作或程序。
出于示例和描述的目的,已经给出了本发明实施的前述说明。前述说明并非是穷举性的也并非要将本发明限制到所公开的确切形式,根据上述教导还可能存在各种变形和修改,或者是可能从本发明的实践中得到各种变形和修改。选择和描述这些实施例是为了说明本发明的原理及其实际应用,以使得本领域的技术人员能够以适合于构思的特定用途来以各种实施方式和各种修改而利用本发明。
Claims (25)
1.一种数据同步方法,其中,应用于发起端,包括:
发送同步数据请求至通信连接的一级存储端,其中,所述同步数据请求经由与所述发起端通信连接的一级存储端发送至二级存储端,所述二级存储端发送所述同步数据请求至与所述发起端无通信连接的一级存储端,所述二级存储端与所述一级存储端通信连接,所述同步数据请求中包括所述数据的数据标签,所述数据标签为所述数据的唯一标记;
接收名单列表,其中,所述名单列表记录存储有所述数据的多个一级存储端,所述名单列表由所述二级存储端根据所述数据标签生成,并经由所述发起端通信连接的一级存储端发送至所述发起端;
根据所述名单列表,将所述数据分为多个数据段,其中,每个数据段对应部分数据,所述发起端分配一个所述数据段至每个所述名单列表记录的一级存储端;
根据所述名单列表及所述多个数据段,分别从每个所述名单列表记录的一级存储端并行下载该一级存储端所对应的所述部分数据,完成所述数据的同步。
2.根据权利要求1所述的方法,其中,所述根据所述名单列表及所述多个数据段,分别从每个所述名单列表记录的一级存储端并行下载该一级存储端所对应的所述部分数据,完成所述数据的同步,包括:
请求建立临时数据同步通道,其中,所述临时数据同步通道为所述发起端与所述名单列表记录的、与所述发起端无通信连接的一级存储端同步数据的临时通道,所述临时数据同步通道个数与所述名单列表记录的、与所述发起端无通信连接的一级存储端的个数相对应;
通过所述临时数据同步通道,发送下载所述部分数据的请求,其中,下载所述部分数据的请求包含所述名单列表记录的、与所述发起端无通信连接的一级存储端对应的所述数据段,所述名单列表记录的、与发起端无通信连接的一级存储端基于所述数据标签及所述数据段,响应所述发起端发送的下载所述部分数据的请求;
并行下载多个所述部分数据,完成所述数据的同步。
3.根据权利要求2所述的方法,其中,所述同步数据请求中还包括身份标签,所述身份标签为所述发起端的唯一身份标记;
所述根据所述名单列表及所述多个数据段,分别从每个所述名单列表记录的一级存储端并行下载该一级存储端所对应的所述部分数据,完成所述数据的同步,还包括:
向所述名单列表记录的、与所述发起端无通信连接的一级存储端发送所述身份标签,以使所述名单列表记录的、与所述发起端无通信连接的一级存储端接收并匹配所述发起端发送的身份标签,及所述二级存储端发送给所述名单列表记录的、与所述发起端无通信连接的一级存储端的身份标签,若相同,则所述名单列表记录的、与所述发起端无通信连接的一级存储端允许与所述发起端建立所述临时数据同步通道。
4.根据权利要求2所述的方法,其中,所述方法还包括:
接收临时令牌,其中,所述临时令牌由与所述发起端通信连接的一级存储端生成并发送至所述发起端,经由所述二级存储端发送所述临时令牌至与所述名单列表记录的、与所述发起端无通信连接的一级存储端,所述临时令牌用于禁止所述名单列表记录的所述多个一级存储端中所述数据的更新,还用于保证所述数据同步的安全性;
所述根据所述名单列表及所述多个数据段,分别从每个所述名单列表记录的一级存储端并行下载该一级存储端所对应的所述部分数据,完成所述数据的同步,还包括:
向所述名单列表记录的、与所述发起端无通信连接的一级存储端发送所述临时令牌,以使所述名单列表记录的、与所述发起端无通信连接的一级存储端接收并校验所述发起端发送的临时令牌,及所述二级存储端发送的所述临时令牌,若校验通过,则所述名单列表记录的、与所述发起端无通信连接的一级存储端允许与所述发起端建立所述临时数据同步通道。
5.根据权利要求2至4中任一项所述的方法,其中,所述方法还包括:
发送删除通知,其中,所述删除通知用于在所述数据同步完成后删除所述临时数据同步通道。
6.根据权利要求3所述的方法,其中,所述方法还包括:
生成所述数据标签,和/或生成所述身份标签。
7.一种数据同步方法,其中,应用于与发起端以及二级存储端分别通信连接的一级存储端,包括:
接收由所述发起端发出的同步数据请求,其中,所述同步数据请求包括需要同步所述数据的数据标签,所述数据标签为所述数据的唯一标记;
发送所述同步数据请求至所述二级存储端;
接收由所述二级存储端发出的名单列表,其中,所述名单列表记录存储有所述数据的多个一级存储端,所述名单列表由所述二级存储端根据所述数据标签生成;
发送所述名单列表至所述发起端,以使所述发起端根据所述名单列表,将所述数据分为多个数据段,每个数据段对应部分数据,并使所述发起端分配一个所述数据段至每个所述名单列表记录的一级存储端,并根据所述名单列表及所述多个数据段,分别从所述名单列表记录的所述多个一级存储端并行下载对应的所述部分数据,完成所述数据的同步。
8.根据权利要求7所述的方法,其中,所述方法还包括:
向所述二级存储端发送数据状态信息,其中,所述数据状态信息为与所述发起端以及所述二级存储端分别通信连接的一级存储端存储的所有数据的变化信息,以使所述二级存储端根据所述数据标签和所述数据状态信息生成所述名单列表。
9.根据权利要求7或8所述的方法,其中,所述方法还包括:
生成临时令牌,其中,所述临时令牌结合所述数据标签,可禁止所述名单列表记录的所述多个一级存储端中的所述数据更新,还用于保证所述数据同步的安全性;
发送所述临时令牌至所述发起端以及所述二级存储端。
10.根据权利要求9所述的方法,其中,所述方法还包括:
停止更新所述数据,其中,与所述发起端通信连接的一级存储端,根据所述临时令牌及所述数据标签,禁止所述数据的更新,所述临时令牌中包括禁止更新所述数据的规定。
11.一种数据同步方法,其中,应用于与发起端无通信连接的一级存储端,包括:
响应于所述发起端发出的建立临时数据同步通道的请求,与所述发起端建立所述临时数据同步通道;
通过所述临时数据同步通道,响应所述发起端发出的下载部分数据的请求,其中,所述部分数据对应于一个数据段中的数据,所述数据段为部分需要同步的数据;
所述方法还包括:
接收由二级存储端发送的同步数据请求,其中,所述发起端经由通信连接的一级存储端发送所述同步数据请求至所述二级存储端,所述同步数据请求包括数据标签及身份标签,所述数据标签、所述身份标签由所述发起端生成,所述数据标签为所述数据的唯一标记,所述身份标签为所述发起端的唯一身份标记;
匹配所述发起端发送的身份标签与所述同步数据请求中的身份标签,若相同,允许与所述发起端建立所述临时数据同步通道,其中,所述发起端在请求建立所述临时数据同步通道时,发送其身份标签至所述发起端无通信连接的一级存储端。
12.根据权利要求11所述的方法,其中,所述方法还包括:
接收并校验所述发起端发送的临时令牌,及所述二级存储端发送的临时令牌,若校验通过,则所述发起端无通信连接的一级存储端允许与所述发起端建立所述临时数据同步通道,其中,所述临时令牌由与所述发起端通信连接的一级存储端生成,并发送至所述发起端及所述二级存储端。
13.根据权利要求12所述的方法,其中,所述方法还包括:
根据所述临时令牌及所述数据标签,停止更新所述数据,其中,所述临时令牌中包括禁止更新所述数据的规定。
14.根据权利要求11至13中任一项所述的方法,其中,所述方法还包括:
发送数据状态信息至所述二级存储端,其中,所述数据状态信息为与所述发起端无通信连接的一级存储端存储数据的状态变化信息,所述与发起端通信连接的一级存储端发送数据状态信息至所述二级存储端,所述二级存储端根据所述数据标签和所述数据状态信息生成名单列表,所述名单列表记录存储有所述数据的多个一级存储端,并经由与所述发起端通信连接的一级存储端发送至所述发起端。
15.根据权利要求11至13中任一项所述的方法,其中,所述方法还包括:
响应于所述发起端发送的删除通知,删除所述临时数据同步通道,其中,所述删除通知为所述发起端下载完成所述部分数据后生成。
16.一种数据同步方法,其中,应用于二级存储端,包括:
接收同步数据请求,其中,所述同步数据请求由发起端经由所述发起端通信连接的一级存储端发送至所述二级存储端,所述同步数据请求包括数据标签,所述数据标签为所述数据的唯一标记;
接收所述一级存储端发送的数据状态信息,其中,所述数据状态信息为所述一级存储端的数据状态变化信息;
基于所述数据标签及所述数据状态信息,生成名单列表,其中,所述名单列表记录存储有所述数据的多个一级存储端;
发送所述名单列表至所述发起端通信连接的一级存储端,并经由所述发起端通信连接的一级存储端发送至所述发起端,其中,所述发起端根据所述名单列表,将所述数据分为多个数据段,每个数据段对应部分数据,所述发起端分配一个所述数据段至每个所述名单列表记录的一级存储端,所述发起端根据所述名单列表及所述多个数据段,分别从所述名单列表记录的所述多个一级存储端并行下载对应的所述部分数据,完成所述数据的同步。
17.根据权利要求16所述的方法,其中,所述方法还包括:
发送所述同步数据请求至所述名单列表记录的、与所述发起端无通信连接的一级存储端,其中,所述同步数据请求还包括身份标签,所述身份标签为所述发起端的唯一身份标记,用于识别所述发起端的身份,所述发起端无通信连接的一级存储端,匹配所述发起端发送的身份标签与所述同步数据请求中的身份标签,若相同,所述名单列表记录的、与所述发起端无通信连接的一级存储端允许与所述发起端建立临时数据同步通道,所述临时数据同步通道为所述发起端与所述发起端无通信连接的一级存储端同步数据的临时通道,所述临时数据同步通道个数与所述数据段个数相对应。
18.根据权利要求17所述的方法,其中,所述方法还包括:
接收发起端通信连接的一级存储端生成并发送的临时令牌,所述临时令牌结合所述数据标签,可禁止所述名单列表记录的所述多个一级存储端中所述数据的更新,所述临时令牌还用于保证所述发起端从所述名单列表记录的多个所述一级存储端下载所述部分数据的安全性;
发送所述临时令牌至所述名单列表记录的、与所述发起端无通信连接的一级存储端。
19.一种数据同步装置,其中,应用于发起端,包括:
发送单元,用于发送同步数据请求至通信连接的一级存储端,其中,所述同步数据请求经由与所述发起端通信连接的一级存储端发送至二级存储端,所述二级存储端发送所述同步数据请求至与所述发起端无通信连接的一级存储端,所述二级存储端与所述一级存储端通信连接,所述同步数据请求中包括所述数据的数据标签,所述数据标签为所述数据的唯一标记;
接收单元,用于接收名单列表,其中,所述名单列表记录存储有所述数据的多个一级存储端,所述名单列表由所述二级存储端根据所述数据标签生成,并经由所述发起端通信连接的一级存储端发送至所述发起端;
分配单元,用于根据所述名单列表,将所述数据分为多个数据段,其中,每个数据段对应部分数据,所述发起端分配一个所述数据段至每个所述名单列表记录的一级存储端;
下载单元,用于根据所述名单列表及所述多个数据段,分别从每个所述名单列表记录的一级存储端并行下载该一级存储端所对应的所述部分数据,完成所述数据的同步。
20.一种数据同步装置,其中,应用于与发起端以及二级存储端分别通信连接的一级存储端,包括:
接收单元,用于接收由所述发起端发出的同步数据请求及由所述二级存储端发出的名单列表,其中,所述同步数据请求包括需要同步所述数据的数据标签,所述数据标签为所述数据的唯一标记,所述名单列表记录存储有所述数据的多个一级存储端,所述名单列表由所述二级存储端根据所述数据标签生成;
发送单元,用于发送所述同步数据请求至所述二级存储端及发送所述名单列表至所述发起端,以使所述发起端根据所述名单列表,将所述数据分为多个数据段,每个数据段对应部分数据,并使所述发起端分配一个所述数据段至每个所述名单列表记录的一级存储端,并根据所述名单列表及所述多个数据段,分别从所述名单列表记录的所述多个一级存储端并行下载对应的所述部分数据,完成所述数据的同步。
21.一种数据同步装置,其中,应用于与发起端无通信连接的一级存储端,包括:
建立通道单元,用于响应于所述发起端发出的建立临时数据同步通道的请求,与所述发起端建立所述临时数据同步通道;
发送单元,用于响应所述发起端发出的下载部分数据的请求,其中,所述部分数据对应于一个数据段中的数据,所述数据段为部分需要同步的数据;
所述建立通道单元还用于:
接收由二级存储端发送的同步数据请求,其中,所述发起端经由通信连接的一级存储端发送所述同步数据请求至所述二级存储端,所述同步数据请求包括数据标签及身份标签,所述数据标签、所述身份标签由所述发起端生成,所述数据标签为所述数据的唯一标记,所述身份标签为所述发起端的唯一身份标记;
匹配所述发起端发送的身份标签与所述同步数据请求中的身份标签,若相同,允许与所述发起端建立所述临时数据同步通道,其中,所述发起端在请求建立所述临时数据同步通道时,发送其身份标签至所述发起端无通信连接的一级存储端。
22.一种数据同步装置,其中,应用于二级存储端,包括:
接收单元,用于接收同步数据请求及一级存储端发送的数据状态信息,其中,所述同步数据请求由发起端经由所述发起端通信连接的一级存储端发送至所述二级存储端,所述同步数据请求包括数据标签,所述数据标签为所述数据的唯一标记,所述数据状态信息为所述一级存储端的数据状态变化信息;
生成单元,用于基于所述数据标签及所述数据状态信息,生成名单列表,其中,所述名单列表记录存储有所述数据的多个一级存储端;
发送单元,用于发送所述名单列表至所述发起端通信连接的一级存储端,并经由所述发起端通信连接的一级存储端发送至所述发起端,其中,所述发起端根据所述名单列表,将所述数据分为多个数据段,每个数据段对应部分数据,所述发起端分配一个所述数据段至每个所述名单列表记录的一级存储端,所述发起端根据所述名单列表及所述多个数据段,分别从所述名单列表记录的所述多个一级存储端并行下载对应的所述部分数据,完成所述数据的同步。
23.一种数据同步系统,其中,所述数据同步系统包括:
发起端、一级存储端、二级存储端;所述一级存储端包括:与所述发起端通信连接的一级存储端,及与所述发起端无通信连接的一级存储端;所述一级存储端与所述二级存储端通信连接;
所述数据同步系统用于执行权利要求1-6中任一项所述的一种数据同步方法或如权利要求7-10中任一项所述的一种数据同步方法或如权利要求11-15中任一项所述的一种数据同步方法或如权利要求16-18中任一项所述的一种数据同步方法。
24.一种电子设备,其中,所述电子设备包括:
存储器,用于存储指令;以及
处理器,用于调用所述存储器存储的指令执行权利要求1-6中任一项所述的一种数据同步方法或如权利要求7-10中任一项所述的一种数据同步方法或如权利要求11-15中任一项所述的一种数据同步方法或如权利要求16-18中任一项所述的一种数据同步方法。
25.一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由处理器执行时,执行权利要求1-6中任一项所述的一种数据同步方法或如权利要求7-10中任一项所述的一种数据同步方法或如权利要求11-15中任一项所述的一种数据同步方法或如权利要求16-18中任一项所述的一种数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910760817.1A CN110489389B (zh) | 2019-08-16 | 2019-08-16 | 一种数据同步方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910760817.1A CN110489389B (zh) | 2019-08-16 | 2019-08-16 | 一种数据同步方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110489389A CN110489389A (zh) | 2019-11-22 |
CN110489389B true CN110489389B (zh) | 2022-04-22 |
Family
ID=68551915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910760817.1A Active CN110489389B (zh) | 2019-08-16 | 2019-08-16 | 一种数据同步方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110489389B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112288936A (zh) * | 2020-11-18 | 2021-01-29 | 济南博观智能科技有限公司 | 一种特征同步方法、装置、系统、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1555540A (zh) * | 2001-08-15 | 2004-12-15 | �����ɷ� | 数据同步接口 |
CN101741569A (zh) * | 2009-12-24 | 2010-06-16 | 中兴通讯股份有限公司 | 数据同步方法、系统及客户端、服务器 |
CN103778136A (zh) * | 2012-10-19 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 一种跨机房数据库同步方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2360712A1 (en) * | 2001-10-31 | 2003-04-30 | Sicon Video Corporation | Method and apparatus for the data-driven synchronous parallel processing of digital data |
-
2019
- 2019-08-16 CN CN201910760817.1A patent/CN110489389B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1555540A (zh) * | 2001-08-15 | 2004-12-15 | �����ɷ� | 数据同步接口 |
CN101741569A (zh) * | 2009-12-24 | 2010-06-16 | 中兴通讯股份有限公司 | 数据同步方法、系统及客户端、服务器 |
CN103778136A (zh) * | 2012-10-19 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 一种跨机房数据库同步方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110489389A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11677820B2 (en) | Peer-to-peer syncable storage system | |
US10949557B2 (en) | Blockchain-based auditing, instantiation and maintenance of 5G network slices | |
US10757106B2 (en) | Resource access control method and device | |
US10574770B2 (en) | Managing notifications across multiple devices | |
TWI659300B (zh) | 一種設備標識提供方法及裝置 | |
US11296940B2 (en) | Centralized configuration data in a distributed file system | |
CN108769230B (zh) | 交易数据存储方法、装置、服务器及存储介质 | |
CN108683668B (zh) | 内容分发网络中的资源校验方法、装置、存储介质及设备 | |
CN112765262B (zh) | 一种数据重分布方法、电子设备及存储介质 | |
WO2020199711A1 (zh) | 数据存储方法、系统、装置及设备 | |
US20210097476A1 (en) | Container Management Method, Apparatus, and Device | |
CN113259359B (zh) | 一种边缘节点能力补充方法、系统、介质及电子终端 | |
US20230102617A1 (en) | Repeat transaction verification method, apparatus, and device, and medium | |
WO2023131058A1 (zh) | 一种企业数字中台中资源服务应用的调度系统和方法 | |
US10440523B2 (en) | Communication control device, communication device, and computer program product for managing a group of devices | |
CN110489389B (zh) | 一种数据同步方法及装置 | |
US11789916B2 (en) | Hash-based duplicate data element systems and methods | |
US20190372825A1 (en) | Communication apparatus, communication method, and recording medium | |
US10853892B2 (en) | Social networking relationships processing method, system, and storage medium | |
US11558179B2 (en) | Distributed data storage | |
CN115766173A (zh) | 数据的处理方法、系统及装置 | |
US11704296B2 (en) | Data management system, data management apparatus, and non-transitory computer readable medium storing data management program | |
CN112306695A (zh) | 数据的处理方法、装置、电子设备及计算机存储介质 | |
US12001400B2 (en) | Method and apparatus for synchronizing file | |
CN114172668B (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 |