一种数据更新方法、装置及系统与流程

文档序号:11693228阅读:223来源:国知局
一种数据更新方法、装置及系统与流程
本发明属于通信
技术领域
,尤其涉及一种数据更新方法、装置及系统。
背景技术
:云端服务,又称网络服务,是指运用网络沟通多台计算机的运算工作,或是透过网络联机取得由远程主机提供的服务等。随着智能终端的不断普及,用户可以通过个人的云端账号和密码登录云端服务器,可以将终端数据同步以及备份到网络云端上,或者从网络云端上下载需要的数据。然而目前在将终端数据同步以及备份到网络云端上,或者从网络云端上下载数据的时候,可能会因为云服务功能开启关闭的切换会导致用户的重复操作,影响数据同步操作的有效性。技术实现要素:本发明实施例提供一种数据更新方法、装置及系统,避免用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。第一方面,本发明实施例提供一种数据更新方法,其中包括:接收云端服务器推送的数据更新的提醒消息;根据所述提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,所述锚点信息用于指示版本号,以及备份时与该版本号相关的信息;当检测到终端本地存在有相应的锚点信息时,将所述锚点信息发送至云端服务器,以使所述云端服务器根据所述锚点信息生成更新数据包;基于所述更新数据包对终端本地相应的数据进行增量更新。第二方面,本发明实施例提供一种数据更新方法,其中包括:向终端推送数据更新的提醒消息,以使终端根据该提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,所述锚点信息用于指示版本号,以及备份时与该版本号相关的信息;当检测到终端本地存在有相应的锚点信息时,获取该锚点信息,并根据该锚点信息生成更新数据包;将所述更新数据包发送至终端,以使终端基于所述更新数据包对终端本地相应的数据进行增量更新。第三方面,本发明实施例提供一种数据更新装置,其中包括:第一接收模块,用于接收云端服务器推送的数据更新的提醒消息;检测模块,用于根据所述提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,所述锚点信息用于指示版本号,以及备份时与该版本号相关的信息;第一发送模块,用于当检测到终端本地存在有相应的锚点信息时,将所述锚点信息发送至云端服务器,以使所述云端服务器根据所述锚点信息生成更新数据包;第一更新模块,用于基于所述更新数据包对终端本地相应的数据进行增量更新。第四方面,本发明实施例提供一种数据更新装置,其中包括:推送模块,用于向终端推送数据更新的提醒消息,以使终端根据该提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,所述锚点信息用于指示版本号,以及备份时与该版本号相关的信息;生成模块,用于当检测到终端本地存在有相应的锚点信息时,获取该锚点信息,并根据该锚点信息生成更新数据包;第二发送模块,用于将所述更新数据包发送至终端,以使终端基于所述更新数据包对终端本地相应的数据进行增量更新。第五方面,本发明实施例提供一种计算机设备,其中包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,执行所述可执行程序代码实现如第一方面所述的数据更新方法。第六方面,本发明实施例提供一种数据更新系统,包括终端以及云端服务器,其中,所述终端为如第三方面提供的数据更新装置,所述云端服务器为第四方面提供的数据更新装置。本发明实施例,在终端接收到数据更新的提醒消息时,检测终端本地是否有相应的锚点信息,锚点信息用于指示版本号,以及备份时与该版本号相关的信息,如果终端本地存在有锚点信息时,将该锚点信息发送至云端服务器,云端服务器按照预设合并算法,根据锚点信息生成更新数据包,从而终端根据该更新数据包对终端本地的数据进行增量更新,即本实施例通过锚点信息来判断终端与云端服务器上的数据是否一致,终端可以基于云端服务器根据锚点信息生成的更新数据包,对相应的本地数据进行增量更新,避免了用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。附图说明下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其它有益效果显而易见。图1为本发明实施例提供的数据更新系统的场景示意图。图2是本发明实施例提供的数据更新方法的流程示意图。图3为本发明实施例提供的数据更新方法的另一流程示意图。图4a为本发明实施例提供的数据更新方法的另一流程示意图。图4b为本发明实施例中生成更新数据包示意图。图5a为本发明实施例提供的数据更新装置的结构示意图。图5b为本发明实施例提供的数据更新装置的另一结构示意图。图6a为本发明实施例提供的数据更新装置的结构示意图。图6b为本发明实施例提供的数据更新装置的另一结构示意图。图7为本发明实施例提供的计算机设备的结构示意图。具体实施方式请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。本发明的原理使用许多其它泛用性或特定目的运算、通信环境或组态来进行操作。所熟知的适合用于本发明的运算系统、环境与组态的范例可包括(但不限于)手持电话、个人计算机、服务器、多处理器系统、微电脑为主的系统、主架构型计算机、及分布式运算环境,其中包括了任何的上述系统或装置。本发明实施例提供一种数据更新方法、装置及系统;其中,一种数据更新装置应用于终端,另一种数据更新装置应用于云端服务器。比如,请参考图1,图1为本发明提供的数据更新系统的场景示意图,该数据更新系统主要包括终端以及云端服务器,云端服务器与终端可通过有线或无线网络进行连接。其中,终端可以包含一个或多个,主要用于接收云端服务器推送的数据更新的提醒消息,如用于提醒相册更新的提醒消息等,然后,终端根据该提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,锚点信息用于指示版本号,以及备份时与该版本号相关的信息;当检测到终端本地存在有相应的锚点信息时,将该锚点信息发送至云端服务器,云端服务器可根据该锚点信息生成更新数据包,最后,终端根据该更新数据包对终端本地相应的数据进行增量更新,如终端根据更新数据包对本地相册进行增量更新,等等。另外,如图1所示,该数据更新系统还可以包括云端服务器,该云端服务器存储有云服务数据以及云服务数据相应的锚点信息,如存储有云相册数据以及云相册数据锚点信息;主要用于向终端推送数据更新的提醒消息,根据终端本地存储的锚点信息,生成更新数据包,并将更新数据包发送至终端,以使终端基于更新数据包对终端本地数据进行增量更新。以下将分别进行详细说明。在本实施例中,将从应用于终端的数据更新装置的角度进行描述,该数据更新装置可以集成在如手机、平板电脑、掌上电脑(pda,personaldigitalassistant)等终端中。请参阅图2,图2是本发明实施例提供的数据更新方法的流程示意图。该方法包括:在步骤s101中,接收云端服务器推送的数据更新的提醒消息。可以理解的是,目前为了便于用户登录,一个云端账号可以对应多个终端,即可以利用多个终端以及相同的云端账号登录云端服务器。比如,当用户利用云端账号首次登录云端服务器、或更换登录终端、或切换云端账号登陆云端服务器时,云端服务器确定云端服务器上是否有新数据,若有,则向终端推送数据更新的提醒消息。在步骤s102中,根据提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,该锚点信息用于指示版本号,以及备份时与该版本号相关的信息。在本发明实施例中,当终端接收到云端服务器推送的提醒消息后,检测本地是否有相应的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。比如,该提醒消息用于提醒相册更新,则终端在接收到该提醒消息后,首先检测本地是否有相册的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。其中,本实施例中增量更新是指对终端本地有变化的部分数据进行增加或修改或删除等更新操作,全量更新是指对终端本地的全部数据进行增加或修改或删除等更新操作。通常的,锚点是指网页制作中超级链接的一种,又称命名锚记,相当于页面内的超级链接;使用命名锚记可以在文档中设置标记,这些标记通常放在文档的特定主题处或顶部,然后可以创建到这些命名锚记的链接,这些链接可快速将访问用户带到指定位置。本发明实施例中,锚点信息为指示版本号及备份时与该版本号相关信息的信息;此处锚点信息可理解为锚点模型,该锚点模型可以包括账号标识信息、终端标识信息、锚点以及锚点详情;其中,锚点为用户备份时生成的版本号,并创建有到该锚点的链接,根据该链接可以获取到该版本号相应的数据;锚点详情是指提交一个版本包含的数据信息,如源数据标识信息、时间信息以及备份操作记录信息等等。比如,该锚点信息为相册相应的锚点信息,终端可以通过该锚点信息中的锚点的指示,获取到相应的锚点详情,并根据锚点详情确定出相片数据。在步骤s103中,当检测到终端本地存在有相应的锚点信息时,将锚点信息发送至云端服务器,以使云端服务器根据该锚点信息生成更新数据包。在某些实施方式中,比如,当检测到终端本地存在锚点信息时,终端会将该锚点信息发送至云端服务器,云端服务器会结合终端发送的锚点信息以及云端服务器上的锚点信息,生成更新数据包,并发送至终端。进一步的,在终端将锚点信息发送至云端服务器后,云端服务器首先会判断终端发送的锚点信息是否为有效,在一种实施方式中,若判断出终端发送的锚点信息有效,则触发根据该锚点信息生成更新数据包的步骤。在另一种实施方式中,终端“将锚点信息发送至云端服务器”之后,还可以包括:在云端服务器确定该锚点信息为无效时,接收云端服务器返回的锚点异常信息,并对终端本地相应的数据进行全量更新。也就是说,若判断出终端发送的锚点信息无效,则云端服务器生成锚点异常信息,并将该锚点异常信息发送至终端,终端接收云端服务器返回的锚点异常信息,并对终端本地数据进行全量更新。可以理解的是,云端服务器可以根据锚点信息中指示的账号标识信息以及终端标识信息来判断终端发送的锚点信息是否有效,等等,此处不作具体限定。在某些实施方式中,当终端检测到终端本地存在有相应的锚点信息时,还可以包括如下步骤:(1)获取云端服务器上的最新锚点信息。其中,该最新锚点信息为更新时间最晚的锚点信息。(2)若终端本地的锚点信息比云端服务器上的最新锚点信息的更新时间较晚,则生成提示消息并展示。该提示消息用于提醒是否进行数据更新操作,其中该数据更新操作可以为向云端服务器下载数据的操作,或者将数据上传到云端服务器的操作,等等。(3)接收基于该提示消息输入的操作指令,并根据该操作指令进行相应操作。该实施方式中,在进行数据更新前,可以由用户自主选择是否需要进行数据更新操作,如当终端本地的锚点信息比云端服务器上的最新锚点信息的更新时间较晚时,可认为用户对终端本地的数据进行了修改,此时需要出发提示机制,如果用户选择需要更新则进行更新,如果用户选择不更新则直接退出数据更新流程,更为人性化。在步骤s104中,基于该更新数据包对终端本地相应的数据进行增量更新。比如,当终端接收到更新数据包后,根据该更新数据包对终端本地相册进行增加或修改或删除等更新操作。在某些实施方式中,终端“检测终端本地是否有相应的锚点信息”之后,还可以包括:当检测到终端本地无相应的锚点信息时,对终端本地相应的数据进行全量更新。比如,当终端首次登录云端服务器时,终端本地无锚点信息,终端系统会请求进行全量更新,终端可从云端服务器上获取相应的需要下载的云端数据(如云相册数据),从而根据该云端数据对终端本地进行全量更新。在某些实施方式中,在根据该云端数据对终端本地进行全量更新后,还可以接收云端服务器返回的最新锚点信息,并将该最新锚点信息保存到终端本地,以作为终端本地的锚点信息,便于下次接收到数据更新的提醒消息时,将该锚点信息发送给云端服务器,其中该最新锚点信息为更新时间最晚的锚点信息。本发明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。由上述可知,本实施例提供的数据更新方法,在终端接收到数据更新的提醒消息时,检测终端本地是否有相应的锚点信息,如果终端本地存在有锚点信息时,将该锚点信息发送至云端服务器,云端服务器按照预设合并算法,根据锚点信息生成更新数据包,从而终端根据该更新数据包对终端本地的数据进行增量更新,即本实施例通过锚点信息来判断终端与云端服务器上的数据是否一致,终端可以基于云端服务器根据锚点信息生成的更新数据包,对相应的本地数据进行增量更新,避免了用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。在本实施例中,将从应用于云端服务器的数据更新装置的角度进行描述,该数据更新装置可以集成在如云端服务器等网络设备中。请参阅图3,图3是本发明实施例提供的数据更新方法的流程示意图。该方法包括:在步骤s201中,向终端推送数据更新的提醒消息,以使终端根据该提醒消息,检测终端本地是否有相应的锚点信息。可以理解的是,当用户利用云端账号首次登录云端服务器、或更换登录终端、或切换云端账号登陆云端服务器时,云端服务器确定云端服务器上是否有新数据,若有,则向终端推送数据更新的提醒消息,如,云端服务器向终端推送相册有更新的提醒消息。进一步的,比如,终端接收到提醒消息后,首先检测本地是否有相册的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。其中,本发明实施例锚点信息可理解为锚点模型,该锚点模型可以包括账号标识信息、终端标识信息、锚点以及锚点详情,其中,锚点可以理解为用户备份时生成的版本号,锚点详情是指提交一个版本包含的数据信息,如源数据标识信息、时间信息以及备份操作记录信息等等。比如,该锚点信息为相册相应的锚点信息,终端可以通过该锚点信息中的锚点的指示,获取到相应的锚点详情,并根据锚点详情确定出相片数据。在步骤s202中,当检测到终端本地存在有相应的锚点信息时,获取该锚点信息,并根据该锚点信息生成更新数据包。比如,当终端本地检测出存在有锚点信息后,会将该锚点信息发送至云端服务器,云端服务器会结合终端发送的锚点信息以及云端服务器上的锚点信息,生成更新数据包,并发送至终端。在某些实施方式中,终端“根据该锚点信息生成更新数据包”可以包括如下步骤:(11)将在终端本地获取的锚点信息与云端服务器上的锚点信息进行对比,得到对比结果。(12)根据对比结果,确定目标锚点信息,该目标锚点信息为云端服务器上大于终端本地锚点信息的锚点信息。(13)按照预设合并算法,根据目标锚点信息生成更新数据包。可以理解的是,本实施例中锚点可以理解为用户备份时生成的版本号,版本号越大则代表更新时间越晚,锚点所指示的相片数据越新。比如,终端本地获取的锚点信息中锚点为“last:1000”,而云端服务器中最大的锚点为“last:1003”,则云端服务器上大于终端本地锚点“last:1000”的锚点为“last:1001”、“last:1002”以及“last:1003”,即锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息为目标锚点信息。进一步的,按照预设合并算法,将锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息所对应的相片数据进行合并,从而生成更新数据包。在步骤s203中,将更新数据包发送至终端,以使终端基于该更新数据包对终端本地相应的数据进行增量更新。比如,当终端接收到更新数据包后,根据该更新数据包对终端本地相册进行增量更新,如对相应部分数据进行增加或修改或删除等更新操作。可以理解的是,在云端服务器接收到终端发送的锚点信息后,云端服务器首先会判断终端发送的锚点信息是否为有效,比如,可包括如下步骤:(21)获取锚点信息中指示的账号标识信息和终端标识信息。(22)判断云端服务器上是否查询到该账号标识信息和该终端标识信息。(23)若查询到该账号标识信息和终端标识信息,则确定该锚点信息有效,并触发根据该锚点信息生成更新数据包的步骤。(24)若没有查询到该账号标识信息和终端标识信息,则确定该锚点信息无效,并向终端返回锚点异常信息。在一种实施方式中,若判断出终端发送的锚点信息有效,则触发根据该锚点信息生成更新数据包的步骤;在另一种实施方式中,在云端服务器确定该锚点信息为无效时,终端接收云端服务器返回的锚点异常信息,并对终端本地相应的数据进行全量更新。也就是说,若判断出终端发送的锚点信息无效,则云端服务器生成锚点异常信息,并将该锚点异常信息发送至终端,终端接收云端服务器返回的锚点异常信息,并对终端本地数据进行全量更新。可以理解的是,云端服务器可以根据锚点信息中指示的账号标识信息以及终端标识信息来判断终端发送的锚点信息是否有效,如判断账号标识信息以及终端标识信息是否可以在云端服务器查询得到,如果查询到,则锚点信息有效,如果查询不到,则可认为锚点信息无效。由上述可知,本实施例提供的数据更新方法,在终端接收到数据更新的提醒消息时,检测终端本地是否有相应的锚点信息,如果终端本地存在有锚点信息时,将该锚点信息发送至云端服务器,云端服务器按照预设合并算法,根据锚点信息生成更新数据包,从而终端根据该更新数据包对终端本地的数据进行增量更新,即本实施例通过锚点信息来判断终端与云端服务器上的数据是否一致,终端可以基于云端服务器根据锚点信息生成的更新数据包,对相应的本地数据进行增量更新,避免了用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。根据上述实施例所描述的方法,以下将举例作进一步详细说明。在本实施例中,将从数据更新系统的角度进行描述,如图1所示,该数据更新系统包括终端以及云端服务器。请一并参阅图4a,图4a为本发明实施例提供的数据更新方法的流程示意图。该方法包括:s31、云端服务器向终端推送相册更新的提醒消息。s32、终端接收该提醒消息,并检测终端本地是否有锚点信息a。比如,当用户利用云端账号首次登录云端服务器、或更换登录终端、或切换云端账号登陆云端服务器时,云端服务器确定云端服务器上是否有新的相片数据,若有,则向终端推送相册有更新的提醒消息。进一步的,终端接收到提醒消息后,首先检测本地是否有相册的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。可以理解的是,若检测本地有相册的锚点信息,则执行步骤s33至步骤s38,进行相片增量更新,若检测本地无相册的锚点信息,则执行步骤s39,进行相片全量更新。本发明实施例中,锚点信息为指示版本号及备份时与该版本号相关信息的信息;此处锚点信息可理解为锚点模型,该锚点模型可以包括账号标识信息,也称用户标识信息(user_id)、终端标识信息(device_sn)、锚点(last)以及锚点详情(info),其中,锚点可以理解为用户备份时生成的版本号,锚点详情是指提交一个版本包含的数据信息,如源数据标识信息、时间信息以及备份操作记录信息等等。可参考表1,为本发明实施例提供的锚点模型的简单示意。表1属性名称必填格式说明user_id用户标识是整数账号标识device_sn设备标识否整数终端标识last锚点是整数用户备份时生成的版本号info锚点详情是字符提交一个版本包含的数据信息比如,账户标识信息:8005400130,终端标识信息:8124575565475825664,用户进行了一次备份操作,备份内容为新增两张照片,修改一张照片,删除了一张照片。此时,云端服务器的锚点详情中,会保存以下内容。锚点详情:[{"gid":"62dc5aff62934993af596693a9428964","op":0},{"gid":"fcb7a52de68d4c43ab52969e384f5614","op":0},{"gid":"317128f059c94db3a208e04fb30a59be","op":2},{"gid":"aa7e36862a6145f794a5f37e68d1b5d9","op":1}]其中,gid是相片唯一标识符,每张照片都会在云端服务器生成一个唯一标识,op为备份操作记录(0:新增1:删除2:修改)可以理解的是,为了方便描述,在本实施例中,终端本地的相册锚点信息可记为锚点信息a,云端服务器上的相册锚点信息可记为锚点信息b,此处举例不构成对本发明的限定。s33、终端将锚点信息a发送至云端服务器。s34、云端服务器接收锚点信息a,将锚点信息a与云端服务器上的锚点信息b进行对比。比如,当终端本地检测出存在有锚点信息后,会将该锚点信息发送至云端服务器,云端服务器会结合终端发送的锚点信息以及云端服务器上的锚点信息,生成更新数据包,并发送至终端。在某些实施方式中,在云端服务器接收锚点信息a时,判断锚点信息a是否为有效,若判断出锚点信息a有效,则触发执行将锚点信息a与云端服务器上的锚点信息b进行对比的步骤(即步骤s34)。若判断出锚点信息a无效,则生成锚点异常信息,并将该锚点异常信息发送至终端,终端接收云端服务器返回的锚点异常信息,并对终端本地相册进行全量更新。s35、云端服务器根据对比结果,获取锚点信息b中大于锚点信息a的锚点信息,并确定为目标锚点信息。比如,终端本地获取的锚点信息中锚点可表示为“last:1000”,而云端服务器中最大的锚点为“last:1003”,则云端服务器上大于终端本地锚点“last:1000”的锚点为“last:1001”、“last:1002”以及“last:1003”,即锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息为目标锚点信息。s36、云端服务器按照预设合并算法,根据目标锚点信息生成更新数据包。比如,按照预设合并算法,将锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息所对应的相片数据进行合并,从而生成更新数据包。如图4b所示,为云端服务器根据目标锚点信息生成更新数据包示意图,比如,目标锚点信息包含锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息,各锚点相应的锚点详情可简单示意如下:1、“last:1001”中锚点详情包括:“gid:101op:0”、“gid:102op:0”以及“gid:103op:0”。2、“last:1002”中锚点详情包括:“gid:104op:0”、“gid:101op:1”、“gid:102op:2”以及“gid:103op:2”。3、“last:1003”中锚点详情包括:“gid:105op:0”、“gid:102op:1”。进一步的,将锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息所对应的相片数据进行合并,比如,首先,建立并初始化两种容器,一种是新增修改容器,另一种是删除容器;在得到目标锚点信息后,如图4b所示,按实际锚点(即版本号)逆向迭代各目标锚点,其中迭代过程基于以下两种原则进行:(一)如果当前锚点详情记录的是新增或修改操作,然后查找删除容器中是否存在该相片的记录(即相片gid);若存在,则确定当前记录无效,若不存在,进行第(二)步操作。如果当前锚点详情记录的是删除操作,则直接将该记录插入到删除容器中。(二)根据当前记录的gid,判断其在新增修改容器中是否存在,如果不存在直接插入到新增修改容器中,否则不处理。将新增修改容器中的记录和删除容器中的记录进行合并,其中设定新增修改容器中op:0,设定删除容器中op:1,从而得到合并结果如下:“gid:101op:1”、“gid:102op:1”、“gid:103op:0”、“gid:104op:0”以及“gid:105op:0”。其后,云端服务器可以根据各锚点详情确定出相片数据,从而根据这些相片数据得到更新数据包。s37、云端服务器将该更新数据包发送至终端。s38、终端基于该更新数据包对终端本地相册进行增量更新。比如,云端服务器将该更新数据包发送至终端,当终端接收到更新数据包后,根据该更新数据包对终端本地相册进行增量更新,如对相应部分数据进行增加或修改或删除等更新操作。s39、对终端本地相册进行全量更新。比如,当终端首次登录云端服务器时,终端本地无锚点信息a,终端系统会请求进行全量更新,终端可从云端服务器上获取相应的需要下载的云端数据,如云相册数据,从而根据该云相册数据对终端本地相册进行全量更新。可以理解的是,在该实施例中没有详述的部分,可以参见上文针对应用于终端的数据更新方法以及云端服务器的数据更新方法的详细描述,此处不再赘述。由上述可知,本实施例提供的数据更新方法,在终端接收到数据更新的提醒消息时,检测终端本地是否有相应的锚点信息,如果终端本地存在有锚点信息时,将该锚点信息发送至云端服务器,云端服务器按照预设合并算法,根据锚点信息生成更新数据包,从而终端根据该更新数据包对终端本地的数据进行增量更新,即本实施例通过锚点信息来判断终端与云端服务器上的数据是否一致,终端可以基于云端服务器根据锚点信息生成的更新数据包,对相应的本地数据进行增量更新,避免了用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。也就是说,本发明是通过锚点信息来判断终端与云端服务器上的数据是否一致,并不是通过根据数据的差量法来判断,进一步的,根据锚点信息是否存在以及锚点信息的大小来进行全量更新或增量更新,是一种全量更新和增量更新结合的方式,大大提高了数据同步操作的有效性和效率。为便于更好的实施本发明实施例提供的数据更新方法,本发明实施例还提供一种基于上述数据更新方法的装置以及计算机设备。其中名词的含义与上述数据更新的方法中相同,具体实现细节可以参考方法实施例中的说明。请参阅图5a,图5a为本发明实施例提供的数据更新装置的结构示意图,其中数据更新装置300应用于终端中,该数据更新装置300可以包括:第一接收模块301、检测模块302、第一发送模块303以及第一更新模块304。其中第一接收模块301,用于接收云端服务器推送的数据更新的提醒消息。可以理解的是,目前为了便于用户登录,一个云端账号可以对应多个终端,即可以利用多个终端以及相同的云端账号登录云端服务器。比如,当用户利用云端账号首次登录云端服务器、或更换登录终端、或切换云端账号登陆云端服务器时,云端服务器确定云端服务器上是否有新数据,若有,则向终端推送数据更新的提醒消息。检测模块302,用于根据提醒消息,检测终端本地是否有与该数据的数据类型相应的锚点信息,该锚点信息用于指示版本号,以及备份时与该版本号相关的信息。在本发明实施例中,当终端接收到云端服务器推送的提醒消息后,检测本地是否有相应的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。比如,该提醒消息用于提醒相册更新,则终端在接收到该提醒消息后,首先检测本地是否有相册的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。其中,本实施例中增量更新是指对终端本地有变化的部分数据进行增加或修改或删除等更新操作,全量更新是指对终端本地的全部数据进行增加或修改或删除等更新操作。通常的,锚点是指网页制作中超级链接的一种,又称命名锚记,相当于页面内的超级链接;使用命名锚记可以在文档中设置标记,这些标记通常放在文档的特定主题处或顶部,然后可以创建到这些命名锚记的链接,这些链接可快速将访问用户带到指定位置。本发明实施例中,锚点信息为指示版本号及备份时与该版本号相关信息的信息;此处所述锚点信息可理解为锚点模型,该锚点模型可以包括账号标识信息、终端标识信息、锚点以及锚点详情;其中,锚点为用户备份时生成的版本号,并创建有到该锚点的链接,根据该链接可以获取到该版本号相应的数据;锚点详情是指提交一个版本包含的数据信息,如源数据标识信息、时间信息以及备份操作记录信息等等。比如,该锚点信息为相册相应的锚点信息,终端可以通过该锚点信息中的锚点的指示,获取到相应的锚点详情,并根据锚点详情确定出相片数据。第一发送模块303,用于当检测到终端本地存在有相应的锚点信息时,将所述锚点信息发送至云端服务器,以使所述云端服务器根据所述锚点信息生成更新数据包。在某些实施方式中,比如,当检测到终端本地存在锚点信息时,终端会将该锚点信息发送至云端服务器,云端服务器会结合终端发送的锚点信息以及云端服务器上的锚点信息,生成更新数据包,并发送至终端。第一更新模块304,用于基于所述更新数据包对终端本地相应的数据进行增量更新。比如,当终端接收到更新数据包后,根据该更新数据包对终端本地相册进行增加或修改或删除等更新操作。请一并参阅图5b,图5b为本发明实施例提供的数据更新装置300的另一结构示意图,该数据更新装置300还可以包括:第二更新模块305,用于在云端服务器确定所述锚点信息为无效时,接收所述云端服务器返回的锚点异常信息,并对终端本地相应的数据进行全量更新。也就是说,在终端将锚点信息发送至云端服务器后,云端服务器首先会判断终端发送的锚点信息是否为有效,在一种实施方式中,若判断出终端发送的锚点信息有效,则触发根据该锚点信息生成更新数据包的步骤。在另一种实施方式中,若判断出终端发送的锚点信息无效,则云端服务器生成锚点异常信息,并将该锚点异常信息发送至终端,终端接收云端服务器返回的锚点异常信息,并对终端本地数据进行全量更新。可以理解的是,云端服务器可以根据锚点信息中指示的账号标识信息以及终端标识信息来判断终端发送的锚点信息是否有效,等等,此处不作具体限定。如图5b所示,该数据更新装置300还可以包括:第三更新模块306,用于当检测到终端本地无相应的锚点信息时,对终端本地相应的数据进行全量更新。比如,当终端首次登录云端服务器时,终端本地无锚点信息,终端系统会请求进行全量更新,终端可从云端服务器上获取相应的需要下载的云端数据(如云相册数据),从而根据该云端数据对终端本地进行全量更新。在某些实施方式中,该数据更新装置300还可以包括保存模块307,在第二更新模块305或者第三更新模块306根据该云端数据对终端本地进行全量更新后,保存模块307用于接收云端服务器返回的最新锚点信息,并将所述最新锚点信息保存到终端本地,以作为终端本地的锚点信息,便于下次接收到数据更新的提醒消息时,将该锚点信息发送给云端服务器,其中该最新锚点信息为更新时间最晚的锚点信息。如图5b所示,在某些实施方式中,该数据更新装置300还可以包括获取模块308、生成展示模块309以及第二接收模块310,当终端检测到终端本地存在有相应的锚点信息时,获取模块308用于获取云端服务器上的最新锚点信息,其中,该最新锚点信息为更新时间最晚的锚点信息。生成展示模块309用于若终端本地的锚点信息比云端服务器上的最新锚点信息的更新时间较晚,则生成提示消息并展示,所述提示消息用于提醒是否进行数据更新操作。其中该数据更新操作可以为向云端服务器下载数据的操作,或者将数据上传到云端服务器的操作,等等。第二接收模块310用于接收基于所述提示消息输入的操作指令,并根据所述操作指令进行相应操作。该实施方式中,在进行数据更新前,可以由用户自主选择是否需要进行数据更新操作,如当终端本地的锚点信息比云端服务器上的最新锚点信息的更新时间较晚时,可认为用户对终端本地的数据进行了修改,此时需要出发提示机制,如果用户选择需要更新则进行更新,如果用户选择不更新则直接退出数据更新流程,更为人性化。具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。图5a和图5b所示数据更新装置可以集成在如手机、平板电脑、掌上电脑pda等终端中。可以理解的是,在该实施例中没有详述的部分,可以参见上文针对应用于终端的数据更新方法以及基于数据更新系统的更新方法的详细描述,此处不再赘述。由上述可知,本实施例提供的数据更新装置,在终端接收到数据更新的提醒消息时,检测终端本地是否有相应的锚点信息,如果终端本地存在有锚点信息时,将该锚点信息发送至云端服务器,云端服务器按照预设合并算法,根据锚点信息生成更新数据包,从而终端根据该更新数据包对终端本地的数据进行增量更新,即本实施例通过锚点信息来判断终端与云端服务器上的数据是否一致,终端可以基于云端服务器根据锚点信息生成的更新数据包,对相应的本地数据进行增量更新,避免了用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。请参阅图6a,图6a为本发明实施例提供的数据更新装置的结构示意图,其中数据更新装置400应用于云端服务器中,该数据更新装置400可以包括:推送模块401、生成模块402以及第二发送模块403。其中推送模块401,用于向终端推送数据更新的提醒消息,以使终端根据该提醒消息,检测终端本地是否有相应的锚点信息。可以理解的是,当用户利用云端账号首次登录云端服务器、或更换登录终端、或切换云端账号登陆云端服务器时,云端服务器确定云端服务器上是否有新数据,若有,则向终端推送数据更新的提醒消息,如,云端服务器向终端推送相册有更新的提醒消息。进一步的,比如,终端接收到提醒消息后,首先检测本地是否有相册的锚点信息,并根据锚点信息判断对终端本地数据进行增量更新还是全量更新。其中,本发明实施例锚点信息可理解为锚点模型,该锚点模型可以包括账号标识信息、终端标识信息、锚点以及锚点详情,其中,锚点可以理解为用户备份时生成的版本号,锚点详情是指提交一个版本包含的数据信息,如源数据标识信息、时间信息以及备份操作记录信息等等。比如,该锚点信息为相册相应的锚点信息,终端可以通过该锚点信息中的锚点的指示,获取到相应的锚点详情,并根据锚点详情确定出相片数据。生成模块402,用于当检测到终端本地存在有相应的锚点信息时,获取该锚点信息,并根据该锚点信息生成更新数据包。比如,当终端本地检测出存在有锚点信息后,会将该锚点信息发送至云端服务器,云端服务器会结合终端发送的锚点信息以及云端服务器上的锚点信息,生成更新数据包,并发送至终端。第二发送模块403,用于将所述更新数据包发送至终端,以使终端基于所述更新数据包对终端本地相应的数据进行增量更新。比如,当终端接收到更新数据包后,根据该更新数据包对终端本地相册进行增量更新,如对相应部分数据进行增加或修改或删除等更新操作。请一并参阅图6b,图6b为本发明实施例提供的数据更新装置400的另一结构示意图,该数据更新装置400中生成模块402可以包括:对比子模块4021,用于将在终端本地获取的锚点信息与云端服务器上的锚点信息进行对比,得到对比结果。确定子模块4022,用于根据对比结果,确定目标锚点信息,所述目标锚点信息为云端服务器上大于终端本地锚点信息的锚点信息。生成子模块4023,用于按照预设合并算法,根据所述目标锚点信息生成更新数据包。可以理解的是,本实施例中锚点可以理解为用户备份时生成的版本号,版本号越大则代表更新时间越晚,锚点所指示的相片数据越新。比如,终端本地获取的锚点信息中锚点为“last:1000”,而云端服务器中最大的锚点为“last:1003”,则云端服务器上大于终端本地锚点“last:1000”的锚点为“last:1001”、“last:1002”以及“last:1003”,即锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息为目标锚点信息。进一步的,按照预设合并算法,将锚点为“last:1001”、“last:1002”以及“last:1003”的锚点信息所对应的相片数据进行合并,从而生成更新数据包。如图6b所示,在某些实施方式中,该数据更新装置400还可以包括:获取模块404,用于获取所述锚点信息中指示的账号标识信息和终端标识信息。判断模块405,用于判断云端服务器上是否查询到所述账号标识信息和所述终端标识信息。触发模块406,用于若查询到所述账号标识信息和所述终端标识信息,则确定所述锚点信息有效,并触发所述根据该锚点信息生成更新数据包的步骤。返回模块407,用于若没有查询到所述账号标识信息和所述终端标识信息,则确定所述锚点信息无效,并向终端返回锚点异常信息。可以理解的是,在云端服务器接收到终端发送的锚点信息后,云端服务器首先会判断终端发送的锚点信息是否为有效,在一种实施方式中,若判断出终端发送的锚点信息有效,则触发根据该锚点信息生成更新数据包的步骤;在另一种实施方式中,在云端服务器确定该锚点信息为无效时,终端接收云端服务器返回的锚点异常信息,并对终端本地相应的数据进行全量更新。也就是说,若判断出终端发送的锚点信息无效,则云端服务器生成锚点异常信息,并将该锚点异常信息发送至终端,终端接收云端服务器返回的锚点异常信息,并对终端本地数据进行全量更新。可以理解的是,云端服务器可以根据锚点信息中指示的账号标识信息以及终端标识信息来判断终端发送的锚点信息是否有效,如判断账号标识信息以及终端标识信息是否可以在云端服务器查询得到,如果查询到,则锚点信息有效,如果查询不到,则可认为锚点信息无效。具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。图6a和图6b所示数据更新装置可以集成在如云端服务器等网络设备中。可以理解的是,在该实施例中没有详述的部分,可以参见上文针对应用于云端服务器的数据更新方法以及基于数据更新系统的更新方法的详细描述,此处不再赘述。由上述可知,本实施例提供的数据更新装置,在终端接收到数据更新的提醒消息时,检测终端本地是否有相应的锚点信息,如果终端本地存在有锚点信息时,将该锚点信息发送至云端服务器,云端服务器按照预设合并算法,根据锚点信息生成更新数据包,从而终端根据该更新数据包对终端本地的数据进行增量更新,即本实施例通过锚点信息来判断终端与云端服务器上的数据是否一致,终端可以基于云端服务器根据锚点信息生成的更新数据包,对相应的本地数据进行增量更新,避免了用户在数据同步更新时进行重复操作,提高数据同步操作的有效性。本发明还提供一种计算机设备,其中该计算机设备可包括如手机、平板电脑、掌上电脑pda等终端,请参阅图7,图7为本发明实施例提供的终端结构示意图。该终端500可以包括有一个或一个以上计算机可读存储介质的存储器501、传感器502、输入单元503、显示单元504、电源505以及包括有一个或者一个以上处理核心的处理器506等部件。本领域技术人员可以理解,图7中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。存储器501可用于存储应用程序和数据。存储器501存储的应用程序中包含有可执行代码。应用程序可以组成各种功能模块。处理器506通过运行存储在存储器501的应用程序,从而执行各种功能应用以及数据处理。此外,存储器501可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器501还可以包括存储器控制器,以提供处理器506和输入单元503对存储器501的访问。终端还可包括至少一种传感器502,比如光传感器、重力加速度传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。输入单元503可用于接收输入的数字、字符信息或用户特征信息(比如指纹),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元503可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器506,并能接收处理器506发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元503还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、指纹识别模组、轨迹球、鼠标、操作杆等中的一种或多种。显示单元504可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元504可包括显示面板。可选的,可以采用液晶显示器(lcd,liquidcrystaldisplay)、有机发光二极管(oled,organiclight-emittingdiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器506以确定触摸事件的类型,随后处理器506根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图7中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。终端还包括给各个部件供电的电源505(比如电池)。优选的,电源可以通过电源管理系统与处理器506逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源505还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。处理器506是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器501内的应用程序,以及调用存储在存储器501内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器506可包括一个或多个处理核心;优选的,处理器506可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等。尽管图7中未示出,终端还可以包括摄像头、蓝牙模块、网络模块等,在此不再赘述。具体在本实施例中,终端中的处理器506会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行代码加载到存储器501中,并由处理器506来运行存储在存储器501中的应用程序,从而实现各种功能:接收云端服务器推送的数据更新的提醒消息;根据所述提醒消息,检测终端本地是否有相应的锚点信息;当检测到终端本地存在有相应的锚点信息时,将所述锚点信息发送至云端服务器,以使所述云端服务器根据所述锚点信息生成更新数据包;基于所述更新数据包对终端本地相应的数据进行增量更新。在某些实施方式中,处理器506在将所述锚点信息发送至云端服务器之后,还用于,在云端服务器确定所述锚点信息为无效时,接收所述云端服务器返回的锚点异常信息,并对终端本地相应的数据进行全量更新。在某些实施方式中,处理器506检测终端本地是否有相应的锚点信息之后,还包括:当检测到终端本地无相应的锚点信息时,对终端本地相应的数据进行全量更新。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对数据更新方法的详细描述,此处不再赘述。本发明实施例提供的所述数据更新装置,譬如为计算机、平板电脑、具有触摸功能的手机等等,所述数据更新装置与上文实施例中的数据更新方法属于同一构思,在所述数据更新装置上可以运行所述数据更新方法实施例中提供的任一方法,其具体实现过程详见所述数据更新方法实施例,此处不再赘述。需要说明的是,对本发明所述数据更新方法而言,本领域普通测试人员可以理解实现本发明实施例所述数据更新方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读取存储介质中,如存储在移动终端的存储器中,并被该移动终端内的至少一个处理器执行,在执行过程中可包括如所述数据更新方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)等。对本发明实施例的所述数据更新装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,所述存储介质譬如为只读存储器,磁盘或光盘等。以上对本发明实施例所提供的一种数据更新方法、装置及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1