数据更新方法及装置制造方法及图纸

技术编号:13941700 阅读:41 留言:0更新日期:2016-10-29 17:28
本公开是关于一种数据更新方法及装置。该方法包括:获取基础版本的数据信息和客户端修改基础版本的数据后得到的客户端修改版本的数据信息;获取存储的最后版本的数据信息;将最后版本的数据信息和客户端修改版本的数据信息分别与基础版本的数据信息进行比较,得到比较结果;根据比较结果更新最后版本的数据信息。通过该技术方案,当有客户端修改数据时,根据客户端修改所基于的基础版本和存储的最后版本的数据信息以及修改后的数据信息对数据进行更新,可以有效地避免基础版本和最后版本不是一个版本时,所带来的数据更新发生冲突的问题,从而有效的解决数据更新冲突。

【技术实现步骤摘要】

本公开涉及数据处理
,尤其涉及一种数据更新方法及装置
技术介绍
目前,随着社会发展和通信技术的进步,人们可以使用多种工具工作、交流和娱乐,如电脑,智能移动设备等。也出现了很多种在多种设备间同步文件、联系人或其他数据的技术和工具。在多个设备间同步时,由于一些多客户端修改的情况,可能会出现数据冲突。现在的一些同步方法不能很好的解决数据冲突的情况。
技术实现思路
本公开实施例提供一种数据更新方法及装置,所述技术方案如下:根据本公开实施例的第一方面,提供一种数据更新方法,所述方法包括:获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息;获取存储的最后版本的数据信息;将所述最后版本的数据信息和所述客户端修改版本的数据信息分别与所述基础版本的数据信息进行比较,得到比较结果;根据比较结果更新所述最后版本的数据信息。在一个实施例中,所述将所述最后版本的数据信息和所述客户端修改版本的数据信息分别与所述基础版本的数据信息进行比较,得到比较结果,包括:将所述最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据;将所述客户端修改版本的数据信息与所述基础版本的数据信息进行比较,得到所述客户端修改版本相对于所述基础版本的第二替代数据和第二被替代数据;所述根据比较结果更新所述最后版本的数据信息,包括:在所述基础版本的数据上,执行所述第一替代数据和第二替代数据对应的替代操作,执行所述第一被替代数据和第二被替代数据对应的被替代操作,获得操作后数据;根据所述操作后数据更新所述最后版本的数据信息,使得更新后的最后版本的数据中不存在之前被替代的被替代数据。在一个实施例中,所述数据信息包括数据本身、或者相比上一个版本的不同数据。在一个实施例中,在所述数据信息包括所述数据本身时,所述将所述最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据,包括:将所述最后版本的数据与所述基础版本的数据进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据。在一个实施例中,在所述数据信息包括所述相比上一个版本的不同数据时,所述将所述基础版本之后的最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据,包括:将所述基础版本之后的所有版本中每个版本相对于上一版本的不同数据、与所述基础版本相对于所述基础版本的上一版本的不同数据进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据。在一个实施例中,所述方法还包括:判断所述客户端修改版本对应的标识与所述最后版本对应的标识是否相同;当所述客户端修改版本的标识与所述最后版本的标识相同时,确定未发生更新冲突;当所述客户端修改版本的标识与所述最后版本的标识不相同时,确定发生了更新冲突;在确定发生了更新冲突时,执行所述获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息的步骤。在一个实施例中,当未发生更新冲突时,所述方法还包括:根据所述客户端修改版本的数据信息更新所述最后版本的数据信息。在一个实施例中,所述方法还包括:确定所述更新后的最后版本对应的标识;将所述更新后的最后版本的数据信息与所述更新后的最后版本对应的标识进行对应存储;输出反馈信息至所述客户端;所述反馈信息包括所述更新后的最后版本的数据信息和所述更新后的最后版本对应的标识。在一个实施例中,所述方法还包括:根据所述每个版本的数据信息的接收时间生成每个版本对应的标识;或者为所述每个版本的数据信息生成版本号,根据所述版本号生成每个版本对应的标识。在一个实施例中,所述替代操作包括加操作,所述被替代操作包括减操作。在一个实施例中,所述在所述基础版本的数据上,执行所述第一替代数据和第二替代数据对应的替代操作,执行所述第一被替代数据和第二被替代数据对应的被替代操作,获得操作后数据,包括:在所述基础版本的数据上,对所述第一替代数据和所述第二替代数据进行加操作,对所述第一被替代数据和所述第二被替代数据进行减操作,并去除重复出现的加操作和减操作,获得操作后数据。根据本公开实施例的第二方面,提供一种数据更新装置,所述装置包括:第一获取模块,用于获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息;第二获取模块,用于获取存储的最后版本的数据信息;比较模块,用于将所述最后版本的数据信息和所述客户端修改版本的数据信息分别与所述基础版本的数据信息进行比较,得到比较结果;第一更新模块,用于根据比较结果更新所述最后版本的数据信息。在一个实施例中,所述比较模块包括:第一比较子模块,用于将所述最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据;第二比较子模块,用于将所述客户端修改版本的数据信息与所述基础版本的数据信息进行比较,得到所述客户端修改版本相对于所述基础版本的第二替代数据和第二被替代数据;所述第一更新模块包括:执行子模块,用于在所述基础版本的数据上,执行所述第一替代数据和第二替代数据对应的替代操作,执行所述第一被替代数据和第二被替代数据对应的被替代操作,获得操作后数据;更新子模块,用于根据所述操作后数据更新所述最后版本的数据信息,使得更新后的最后版本的数据中不存在之前被替代的被替代数据。在一个实施例中,所述数据信息包括数据本身、或者相比上一个版本的不同数据。在一个实施例中,在所述数据信息包括所述数据本身时,所述第一比较子模块用于:将所述最后版本的数据与所述基础版本的数据进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据。在一个实施例中,在所述数据信息包括所述相比上一个版本的不同数据时,所述第一比较子模块用于:将所述基础版本之后的所有版本中每个版本相对于上一版本的不同数据、与所述基础版本相对于所述基础版本的上一版本的不同数据进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据。在一个实施例中,所述装置还包括:判断模块,用于判断所述客户端修改版本对应的标识与所述最后版本对应的标识是否相同;第一确定模块,用于当所述客户端修改版本的标识与所述最后版本的标识相同时,确定未发生更新冲突;第二确定模块,用于当所述客户端修改版本的标识与所述最后版本的标识不相同时,确定发生了更新冲突;执行模块,用于在确定发生了更新冲突时,触发第一获取模块获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息。在一个实施例中,当未发生更新冲突时,所述装置还包括:第二更新模块,用于根据所述客户端修改版本的数据信息更新所述最后版本的数据信息。在一个实施例中,所述装置还包括:第三确定模块,用于确定所述更新后的最后版本对应的标识;存储模块,用于将所述更新后的最后版本的数据信息与所述更新后的最后版本对应的标识进行对应存储;输出模块,用于输出反馈信息至所述客户端;所述反馈信息包括所述更新后的最后版本的数据信息和所述更新后的最后版本对应的标识。在一个实施例中,所述装本文档来自技高网...

【技术保护点】
一种数据更新方法,其特征在于,所述方法包括:获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息;获取存储的最后版本的数据信息;将所述最后版本的数据信息和所述客户端修改版本的数据信息分别与所述基础版本的数据信息进行比较,得到比较结果;根据比较结果更新所述最后版本的数据信息。

【技术特征摘要】
1.一种数据更新方法,其特征在于,所述方法包括:获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息;获取存储的最后版本的数据信息;将所述最后版本的数据信息和所述客户端修改版本的数据信息分别与所述基础版本的数据信息进行比较,得到比较结果;根据比较结果更新所述最后版本的数据信息。2.如权利要求1所述的方法,其特征在于,所述将所述最后版本的数据信息和所述客户端修改版本的数据信息分别与所述基础版本的数据信息进行比较,得到比较结果,包括:将所述最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据;将所述客户端修改版本的数据信息与所述基础版本的数据信息进行比较,得到所述客户端修改版本相对于所述基础版本的第二替代数据和第二被替代数据;所述根据比较结果更新所述最后版本的数据信息,包括:在所述基础版本的数据上,执行所述第一替代数据和第二替代数据对应的替代操作,执行所述第一被替代数据和第二被替代数据对应的被替代操作,获得操作后数据;根据所述操作后数据更新所述最后版本的数据信息,使得更新后的最后版本的数据中不存在之前被替代的被替代数据。3.如权利要求2所述的方法,其特征在于,所述数据信息包括数据本身、或者相比上一个版本的不同数据。4.如权利要求3所述的方法,其特征在于,在所述数据信息包括所述数据本身时,所述将所述最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据,包括:将所述最后版本的数据与所述基础版本的数据进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据。5.如权利要求3所述的方法,其特征在于,在所述数据信息包括所述相比上一个版本的不同数据时,所述将所述基础版本之后的最后版本的数据信息与所述基础版本的数据信息进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据,包括:将所述基础版本之后的所有版本中每个版本相对于上一版本的不同数据、与所述基础版本相对于所述基础版本的上一版本的不同数据进行比较,得到所述最后版本相对于所述基础版本的第一替代数据和第一被替代数据。6.如权利要求1所述的方法,其特征在于,所述方法还包括:判断所述客户端修改版本对应的标识与所述最后版本对应的标识是否相同;当所述客户端修改版本的标识与所述最后版本的标识相同时,确定未发生更新冲突;当所述客户端修改版本的标识与所述最后版本的标识不相同时,确定发生了更新冲突;在确定发生了更新冲突时,执行所述获取基础版本的数据信息和客户端修改所述基础版本的数据后得到的客户端修改版本的数据信息的步骤。7.如权利要求6所述的方法,其特征在于,当未发生更新冲突时,所述方法还包括:根据所述客户端修改版本的数据信息更新所述最后版本的数据信息。8.如权利要求3所述的方法,其特征在于,所述方法还包括:确定所述更新后的最后版本对应的标识;将所述更新后的最后版本的数据信息与所述更新后的最后版本对应的标识进行对应存储;输出反馈信息至所述客户端;所述反馈信息包括所述更新后的最后版本的数据信息和所述更新后的最后版本对应的标识。9.如权利要求6所述的方法,其特征在于,所述方法还包括:根据所述每个版本的数据信息的接收时间生成每个版本对应的标识;或者为所述每个版本的数据信息生成版本号,根据所述版本号生成每个版本对应的标识。10.如权利要求2所述的方法,其特征在于,所述替代操作包括加操作,所述被替代操作包括减操作。11.如权利要求10所述的方法,其特征在于,所述在所述基础版本的数据上,执行所述第一替代数据和第二替代数据对应的替代操作,执行所述第一被替代数据和第二被替代数据对应的被替代操作,获得操作后数据,包括:在所述基础版本的数据上,对所述第一替代数据和所述第二替代数据进行加操作,对所述第一被替代数据和所述第二被替代数据进行减操作,并去除重复出现的加操作和减操作,获得操作后数据。12.一种数据更新装置,其特征在于,所述装置包括:第一获取模块,用于获取基础版本的数据信息和客户端...

【专利技术属性】
技术研发人员:张宇鹏方圆朱佩宏
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:北京;11

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

1