在多个客户端之间进行数据同步的方法和装置制造方法及图纸

技术编号:9900526 阅读:170 留言:0更新日期:2014-04-10 11:51
本发明专利技术提供一种在多个客户端之间进行数据同步的方法和装置,涉及互联网领域。其中,该方法包括:服务器接收客户端生成的变更集,其中,客户端中包括由多个元素构成的数据,客户端在每次数据变更后生成包含该次数据变更记录的变更集,客户端包括第一客户端和第二客户端,变更集包括第一客户端生成的第一变更集和第二客户端生成的第二变更集;当第一变更集和第二变更集包括对数据中不同元素的更变时,服务器根据第一变更集和第二变更集对第一客户端和第二客户端进行数据同步。通过本发明专利技术的实施方式,能够实现各客户端之间准确的数据同步。

【技术实现步骤摘要】
在多个客户端之间进行数据同步的方法和装置
本专利技术涉及互联网领域,特别涉及一种在多个客户端之间进行数据同步的方法。
技术介绍
网络账号的同步技术可以使用户在通过不同的客户端登陆同一个网络账号时,获取到相同的数据。在不同客户端之间进行数据同步时,需要在不同的客户端上进行文件传送或删除多余文件,最终使多个客户端上的数据保持一致,当多个客户端上的内容均发生变更时,容易出现同步错误,例如,有两个客户端均添加了同一个新的应用,那么将这两个客户端上的数据同步到第三个客户端后,第三个客户端上可能会出现两个相同的该应用;或者多个客户端分别进行不同操作,进行同步时,无法根据不同的操作得到统一的同步结果。对于现有技术中多个客户端无法得到统一同步结果的问题,目前没有好的解决办法。
技术实现思路
本专利技术实施例提供一种在多个客户端之间进行数据同步的方法和装置,以实现各客户端之间准确的数据同步。本专利技术为了实现上述目的,提供一种在多个客户端之间进行数据同步的方法,包括:服务器接收客户端生成的变更集,其中,客户端中包括由多个元素构成的数据,客户端在每次数据变更后生成包含该次数据变更记录的变更集,客户端包括第一客户端和第二客户端,变更集包括第一客户端生成的第一变更集和第二客户端生成的第二变更集;当第一变更集和第二变更集包括对数据中不同元素的更变时,服务器根据第一变更集和第二变更集对第一客户端和第二客户端进行数据同步。在一个实施例中,上述方法还包括:服务器确定生成第一变更集和第二变更集的顺序;当第一变更集和第二变更集中包括对数据中同一元素的不同更变时,服务器根据顺序在后的变更集对第一客户端和第二客户端进行数据同步。在一个实施例中,在服务器上为变更后的数据设置版本号。在一个实施例中,在每次数据变更后,版本号进行一次递增。在一个实施例中,服务器为进行数据变更的客户端备份镜像文件,镜像文件为客户端当前数据的副本。本专利技术为了实现上述目的,还提供一种在多个客户端之间进行数据同步的装置,接收模块,用于接收客户端生成的变更集,其中,客户端中包括由多个元素构成的数据,客户端在每次数据变更后生成包含该次数据变更记录的变更集,客户端包括第一客户端和第二客户端,变更集包括第一客户端生成的第一变更集和第二客户端生成的第二变更集;第一同步模块,用于当第一变更集和第二变更集包括对数据中不同元素的更变时,根据第一变更集和第二变更集对第一客户端和第二客户端进行数据同步。在一个实施例中,上述装置还包括:处理模块,用于确定生成第一变更集和第二变更集的顺序;第二同步模块,用于当第一变更集和第二变更集中包括对数据中同一元素的不同更变时,根据顺序在后的变更集对第一客户端和第二客户端进行数据同步。在一个实施例中,上述装置还包括:设置模块,用于为变更后的数据设置版本号。在一个实施例中,在每次数据变更后,版本号进行一次递增。在一个实施例中,上述装置还包括:备份模块,用于为进行数据变更的客户端备份镜像文件,镜像文件为客户端当前数据的副本。本专利技术通过各客户端的变更集对所有客户端进行数据同步,实现准确的数据同步。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,并不构成对本专利技术的限定。在附图中:图1是本专利技术实施例示出的在多个客户端之间进行数据同步的方法100的流程图;图2A是本专利技术第一优选实施例示出的在不同客户端之间进行数据同步的方法200的流程图;图2B是本专利技术第一优选实施例示出的第一示意图;图2C是本专利技术第一优选实施例示出的第二示意图;图2D是本专利技术第一优选实施例示出的第三示意图;图2E是本专利技术第一优选实施例示出的第四示意图;图2F是本专利技术第一优选实施例示出的第五示意图;图3A是本专利技术第二优选实施例示出的一种对多个客户端中的数据进行同步的方法的流程图;图3B是本专利技术第二优选实施例示出的第一示意图;图3C是本专利技术第二优选实施例示出的第二示意图;图3D是本专利技术第二优选实施例示出的第三示意图;图3E是本专利技术第二优选实施例示出的另一种对多个客户端中的数据进行同步的方法的流程图;图3F是本专利技术第二优选实施例示出的第四示意图;图3G是本专利技术第二优选实施例示出的第五示意图;图3H是本专利技术第二优选实施例示出的第六示意图;图4是本专利技术实施例示出的在多个客户端之间进行数据同步的装置400的结构框图;图5是本专利技术第一优选实施例示出的在多个客户端之间进行数据同步的装置500的结构框图;以及图6是本专利技术第二优选实施例示出的在多个客户端之间进行数据同步的装置600的结构框图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下面结合附图对本专利技术实施例作进一步详细说明。在此,本专利技术的示意性实施例及其说明用于解释本专利技术,但并不作为对本专利技术的限定。现在将参考附图进一步详细描述本专利技术。本专利技术可以许多不同的形式来实现,不应该被理解为仅限于此处所阐述的实施例。这些实施例只作为示例提供,以便为本领域技术人员提供对本专利技术的完全理解。本专利技术实施例提供了一种在多个客户端之间进行数据同步的方法,图1是本专利技术实施例示出的在多个客户端之间进行数据同步的方法100的流程图。本实施例首先以两个客户端的同步为例,对多个客户端之间的同步方法进行描述,如果任意两个客户端都能得到统一的同步结果,则所有的客户端都能得到统一的同步结果。该方法的执行主体可以是一台服务器,如图1所示,该方法包括以下步骤:步骤110,服务器接收客户端生成的变更集。客户端中包括由多个元素构成的数据,每个元素可以是一个应用、文件或链接等,通过添加元素、删减元素或者调整元素的位置等方式,可以进行数据变更,客户端在每次数据变更后生成包含该次数据变更记录的变更集。客户端包括第一客户端和第二客户端,变更集包括第一客户端生成的第一变更集和第二客户端生成的第二变更集。本实施例中的“第一”和“第二”不是对数量的限定,而是作为多个客户端之间的区分,第一客户端可以是客户端11,第二客户端可以是客户端12,以下是在一次数据变更时,由客户端11生成的一个第一变更集的实例,客户端11在初始状态的数据为空集,变更后的数据为(a、b、c、d),此时,a、b、c、d分别为数据中的元素,生成的第一变更集如下:从该变更集可以看出,客户端11添加了元素a,元素a的前面previous是None,即元素a的前面没有其他数据,元素a的属性properties可以根据需求进行设置,在本实施例中为其他属性otherproperties。本实施例中为元素a、b、c、d设置了属性,但本领域一般技术人员应当理解的是,数据有多种划分为元素的方式,因此元素也可能没有设置属性。客户端11还添加了元素b、元素c和元素d,元素b的previous为元素a,元素c的previous为元素b,元素d的previous为元素c,即客户端11更变后的数据为(a、b、c、d),通过变更集可以得出变更后的数据,同理,通过变更后的数据也可以得出该次数据变更的变更集。具体实施例中,服务器上还可以为变更后的数据设置版本号,版本号可以通过调用计数器来实现,服务器上的数据在同步时每进行一次变更,版本号自动进行一次递增,例如初始状态版本号为0,服务器上的数据在每次变更后,版本号加1,该次与服务器进行同步的客户端在同步后被设本文档来自技高网...
在多个客户端之间进行数据同步的方法和装置

【技术保护点】
一种在多个客户端之间进行数据同步的方法,其特征在于,包括:服务器接收所述客户端生成的变更集,其中,所述客户端中包括由多个元素构成的数据,所述客户端在每次数据变更后生成包含该次数据变更记录的所述变更集,所述客户端包括第一客户端和第二客户端,所述变更集包括所述第一客户端生成的第一变更集和所述第二客户端生成的第二变更集;当所述第一变更集和所述第二变更集包括对所述数据中不同元素的更变时,所述服务器根据所述第一变更集和所述第二变更集对所述第一客户端和所述第二客户端进行数据同步。

【技术特征摘要】
1.一种在多个客户端之间进行数据同步的方法,其特征在于,包括:服务器接收所述客户端生成的变更集,在所述服务器上为变更后的数据设置版本号,在每次数据变更后,所述版本号进行一次递增并为所述数据变更的客户端备份镜像文件,其中,所述客户端中包括由多个元素构成的数据,所述客户端在数据变更后与所述服务器上最后一次数据变更后的镜像文件对比生成所述客户端该次数据变更记录的所述变更集,所述客户端包括第一客户端和第二客户端,所述变更集包括所述第一客户端生成的第一变更集和所述第二客户端生成的第二变更集;当所述第一变更集和所述第二变更集包括对所述数据中不同元素的变更时,所述服务器根据服务器数据的版本号和客户端数据的版本号,以及所述第一变更集和所述第二变更集对所述第一客户端和所述第二客户端进行数据同步;所述客户端在同步后被设置为与所述服务器具有相同版本号。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述服务器确定生成所述第一变更集和所述第二变更集的顺序;当所述第一变更集和所述第二变更集中包括对所述数据中同一元素的不同更变时,所述服务器根据顺序在后的变更集对所述第一客户端和所述第二客户端进行数据同步。3.根据权利要求1所述的方法,其特征在于,所述服务器为进行数据变更的客户端备份镜像文件,所述镜像文件为所述客户端当前数据的副本。4.一种在多个...

【专利技术属性】
技术研发人员:薛鹏飞郑伟
申请(专利权)人:北界创想北京软件有限公司
类型:发明
国别省市:北京;11

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

1