数据更新方法、装置、终端及存储介质制造方法及图纸

技术编号:24331154 阅读:16 留言:0更新日期:2020-05-29 19:39
本发明专利技术提供一种数据更新方法,包括:接收多个服务器发送的第一数据更新请求和预设时间段内的第二数据更新请求,当第一数据更新请求与第二数据更新请求为同一数据的数据更新请求时存储于同一个数据队列中;发起数据异步更新指令至预设数据中心,当接收到预设数据中心上报的最新的数据与目标数据相同时,通知预设数据中心发送最新的数据给用户。本发明专利技术还提供一种数据更新装置、终端及存储介质。本发明专利技术能够解决分布式存储系统中数据更新时的一致性的问题,提高了数据存储的正确性。

Data update method, device, terminal and storage medium

【技术实现步骤摘要】
数据更新方法、装置、终端及存储介质
本专利技术涉及数据存储领域,具体涉及一种数据更新方法、装置、终端及存储介质。
技术介绍
随着信息技术的发展,业务提供方的访问量不断的增加,用户规模不断扩大,为了保证用户获得业务提供方所提供的业务服务的稳定和效率,业务提供方后台通过局域网连接多个服务器构建分布式服务器集群的方式为用户提供相应的业务,特别是在数据更新业务方面,为了确保分布式环境下数据库中所存储的数据为当前最新数据,需要及时更新数据库中的数据。现有技术中通过定期对分布式系统中的数据库中的数据进行全量更新,无论原始数据是否存在更新,均会对目标库进行全量更新,由于全量更新时数据量太大,浪费资源,无法保证客户获取的数据是实时更新的数据,并且由于分布式系统存在多台服务器,同一条数据的更新可能存在多个任务,并且各个任务的数据可能不一致,故涉及到分布式更新数据最终一致性的问题。
技术实现思路
鉴于以上内容,有必要提出一种数据更新方法、装置、终端及存储介质,能够解决分布式存储系统中数据更新时的一致性的问题,提高了数据存储的正确性。本专利技术的第一方面提供一种数据更新方法,所述方法包括:接收多个服务器发送的第一数据更新请求,其中,所述第一数据更新请求包括:更新后的第一数据、发送所述第一数据更新请求的第一时间及所述服务器的标识;当在预设时间段内接收到所述多个服务器发送的第二数据更新请求时,其中,所述第二数据更新请求包括:更新后的第二数据、发送所述第二数据更新请求的第二时间及所述服务器的标识,判断所述第一数据更新请求与所述第二数据更新请求是否为同一数据的数据更新请求;当所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求时,将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中;发起数据异步更新指令至预设数据中心,其中,所述数据异步更新指令中携带有存储于所述数据队列的尾部的更新后的目标数据;接收所述预设数据中心上报的最新的数据;判断所述最新的数据与所述目标数据是否相同;当所述最新的数据与所述目标数据相同时,通知所述预设数据中心发送所述最新的数据给用户。优选的,所述将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中包括:对所有所述第一时间和所有所述第二时间进行排序;根据排序后的时间将所述第一更新请求和所述第二更新请求存储于同一个数据队列中,其中,最大时间对应的数据更新请求存储于所述数据队列的尾部,最小时间对应的数据更新请求存储于所述数据队列的头部。优选的,所述判断所述第一数据更新请求与所述第二数据更新请求是否为同一数据的数据更新请求包括:判断所述更新后的第一数据与所述更新后的第二数据中是否有相同的数据;当所述更新后的第一数据与所述更新后的第二数据中有相同的数据时,确定所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求;当所述更新后的第一数据与所述更新后的第二数据中没有相同的数据,确定所述第一数据更新请求与所述第二数据更新请求不为同一数据的数据更新请求。优选的,当确定所述第一数据更新请求与所述第二数据更新请求不为同一数据的数据更新请求时,所述方法还包括:将所述第一数据更新请求和所述第二数据更新请求存储于不同的数据队列中。优选的,在所述通知所述预设数据中心发送所述最新的数据给用户之后,所述方法还包括:保留所述数据队列的尾部存储的数据更新请求;删除所述数据队列的其余数据更新请求。优选的,当所述最新的数据与所述目标数据不相同时,所述方法还包括:添加更新异常的标识至所述预设中心上报的最新数据中。优选的,所述方法还包括:当所述最新的数据与所述目标数据不相同时,再次发起数据异步更新指令至所述预设数据中心。本专利技术的第二方面提供一种数据更新装置,所述装置包括:第一接收模块,用于接收多个服务器发送的第一数据更新请求,其中,所述第一数据更新请求包括:更新后的第一数据、发送所述第一数据更新请求的第一时间及所述服务器的标识;第一判断模块,用于当所述第一接收模块在预设时间段内接收到所述多个服务器发送的第二数据更新请求时,其中,所述第二数据更新请求包括:更新后的第二数据、发送所述第二数据更新请求的第二时间及所述服务器的标识,判断所述第一数据更新请求与所述第二数据更新请求是否为同一数据的数据更新请求;存储模块,用于当所述第一判断模块确定所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求时,将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中;发起模块,用于发起数据异步更新指令至预设数据中心,其中,所述数据异步更新指令中携带有存储于所述数据队列的尾部的更新后的目标数据;第二接收模块,用于接收所述预设数据中心上报的最新的数据;第二判断模块,用于判断所述最新的数据与所述目标数据是否相同;通知模块,用于当所述第二判断模块确定所述最新的数据与所述目标数据相同时,通知所述预设数据中心发送所述最新的数据给用户。本专利技术的第三方面提供一种终端,所述终端包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现所述数据更新方法。本专利技术的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述数据更新方法。综上所述,本专利技术所述的数据更新方法、装置、终端及存储介质,接收多个服务器发送的第一数据更新请求和预设时间段内的第二数据更新请求,当确定所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求时,将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中;发起数据异步更新指令至预设数据中心,其中,所述数据异步更新指令中携带有存储于所述数据队列的尾部的更新后的目标数据;接收所述预设数据中心上报的最新的数据;判断所述最新的数据与所述目标数据是否相同;当所述最新的数据与所述目标数据相同时,通知所述预设数据中心发送所述最新的数据给用户。本专利技术一方面通过将不同服务器发送的相同数据的数据更新请求存储至同一数据队列,避免了同一个数据队列中出现不同数据的数据更新请求引起的数据混乱的现象,保证了分布式存储系统中数据更新时的一致性的问题,提高了数据存储的准确性。另一方面通过将尾部存储的数据与预设中心上报的最新数据进行比对后发送最新的数据给用户,提高了用户获取数据的准确性。附图说明图1是本专利技术实施例一提供的数据更新方法的流程图。图2是本专利技术实施例二提供的数据更新装置的结构图。图3是本专利技术实施例三提供的终端的结构示意图。如下具体实施方式将结合上述附图进一步说明本专利技术。具体实施方式为了能够更清楚地理解本专利技术的上述目的、特征和优点,下面结合附图和具体实施例对本专利技术进行详细描述。需要说明的是,在不冲突的情况下,本专利技术的实本文档来自技高网...

【技术保护点】
1.一种数据更新方法,其特征在于,所述方法包括:/n接收多个服务器发送的第一数据更新请求,其中,所述第一数据更新请求包括:更新后的第一数据、发送所述第一数据更新请求的第一时间及所述服务器的标识;/n当在预设时间段内接收到所述多个服务器发送的第二数据更新请求时,其中,所述第二数据更新请求包括:更新后的第二数据、发送所述第二数据更新请求的第二时间及所述服务器的标识,判断所述第一数据更新请求与所述第二数据更新请求是否为同一数据的数据更新请求;/n当所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求时,将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中;/n发起数据异步更新指令至预设数据中心,其中,所述数据异步更新指令中携带有存储于所述数据队列的尾部的更新后的目标数据;/n接收所述预设数据中心上报的最新的数据;/n判断所述最新的数据与所述目标数据是否相同;/n当所述最新的数据与所述目标数据相同时,通知所述预设数据中心发送所述最新的数据给用户。/n

【技术特征摘要】
1.一种数据更新方法,其特征在于,所述方法包括:
接收多个服务器发送的第一数据更新请求,其中,所述第一数据更新请求包括:更新后的第一数据、发送所述第一数据更新请求的第一时间及所述服务器的标识;
当在预设时间段内接收到所述多个服务器发送的第二数据更新请求时,其中,所述第二数据更新请求包括:更新后的第二数据、发送所述第二数据更新请求的第二时间及所述服务器的标识,判断所述第一数据更新请求与所述第二数据更新请求是否为同一数据的数据更新请求;
当所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求时,将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中;
发起数据异步更新指令至预设数据中心,其中,所述数据异步更新指令中携带有存储于所述数据队列的尾部的更新后的目标数据;
接收所述预设数据中心上报的最新的数据;
判断所述最新的数据与所述目标数据是否相同;
当所述最新的数据与所述目标数据相同时,通知所述预设数据中心发送所述最新的数据给用户。


2.如权利要求1所述的方法,其特征在于,所述将所述第一数据更新请求和所述第二数据更新请求存储于同一个数据队列中包括:
对所有所述第一时间和所有所述第二时间进行排序;
根据排序后的时间将所述第一更新请求和所述第二更新请求存储于同一个数据队列中,其中,最大时间对应的数据更新请求存储于所述数据队列的尾部,最小时间对应的数据更新请求存储于所述数据队列的头部。


3.如权利要求1所述的方法,其特征在于,所述判断所述第一数据更新请求与所述第二数据更新请求是否为同一数据的数据更新请求包括:
判断所述更新后的第一数据与所述更新后的第二数据中是否有相同的数据;
当所述更新后的第一数据与所述更新后的第二数据中有相同的数据时,确定所述第一数据更新请求与所述第二数据更新请求为同一数据的数据更新请求;
当所述更新后的第一数据与所述更新后的第二数据中没有相同的数据,确定所述第一数据更新请求与所述第二数据更新请求不为同一数据的数据更新请求。


4.如权利要求3所述的方法,其特征在于,当确定所述第一数据更新请求与所述第二数据更新请求不为同一数据的数据更新请求时,所述方法还包括:
将所述第一数据更新请求和所述第二数据更新请求存储于不同的数据队列中。<...

【专利技术属性】
技术研发人员:王晓东
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:广东;44

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

1