一种本地缓存与数据库数据同步方法和装置制造方法及图纸

技术编号:24353280 阅读:20 留言:0更新日期:2020-06-03 02:02
本发明专利技术实施例提供的一种本地缓存与数据库数据同步方法和装置,在使用本地缓存数据或远端数据库数据时,判断本地Redis是否为空,以及本地缓存与远端数据库的数据保存时间是否一致;若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,则在使用本地缓存数据时,基于本地缓存更新远端数据库;在使用本地缓存数据时,清空本地缓存,并从远端数据库下载数据到本地缓存。综合考虑了当前业务场景存在的数据变更情况,通过已有数据同步结合的方式,能够实现本地缓存与远端数据库数据一致性的要求;解决了现有技术中,当存在其它人员修改了当前数据的情况,会导致当前作业数据与远端数据库数据不一致的问题。

A method and device of data synchronization between local cache and database

【技术实现步骤摘要】
一种本地缓存与数据库数据同步方法和装置
本专利技术实施例涉及数据存储
,尤其涉及一种本地缓存与数据库数据同步方法和装置。
技术介绍
随着计算机信息时代的不断发展和进步,网络应用业务的用户数量越来越多,网络应用业务服务系统所要处理的数据量越来越庞大,并且用户对应用业务服务质量的要求也越来越高。为了提高网络应用业务的可靠性和可维护性,扩展网络应用业务的服务范围,分布式的业务服务系统当今已得到了广泛的应用。分布式的业务服务系统通常采用多台应用服务器接收和响应来自用户的业务请求,采用一数据库服务器存储业务数据,各应用服务器分布设置于不同地区并通过数据通信网络与数据库服务器进行数据通信连接,以更方便于为不同区域的用户提供网络应用业务服务,并且由数据库服务器对业务数据进行统一的管理也更方便于业务数据的维护和升级。在现有的数据同步方案中,主要是通过判断数据是否存在,如果存在,则直接返回缓存好的数据,如果不存在,读取数据库数据,并将数据缓存到Redis,此场景只适用于数据量较大,但不经常更新的情况。上述方法,难以满足现有当前的大量数据更新业务处理的需求。在目前业务场景中,在数据提交时做一次数据同步是不满足当前的业务需求的。当存在其它人员修改了当前数据的情况,会导致当前作业数据与远端数据库数据不一致的情况,数据不同步。
技术实现思路
本专利技术实施例提供一种本地缓存与数据库数据同步方法和装置,用以解决现有技术中在数据提交时做一次数据同步是不满足当前的业务需求的。当存在其它人员修改了当前数据的情况,会导致当前作业数据与远端数据库数据不一致的情况,数据不同步的问题。第一方面,本专利技术实施例提供一种本地缓存与数据库数据同步方法,包括:若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,则在使用本地缓存数据时,基于本地缓存更新远端数据库。作为优选的,还包括:若判断获知本地Redis为空,则清空本地缓存,并从远端数据库下载数据到本地缓存;若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间一致,则清空本地缓存,并从远端数据库下载数据到本地缓存。作为优选的,还包括:若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,基于业务员选择使用本地缓存数据或远端数据库数据。作为优选的,基于业务员选择使用本地缓存数据或远端数据库数据,具体包括:若判断获知业务员选择使用远端数据库数据,则清空本地缓存,并从远端数据库下载数据到本地缓存;若判断获知业务员选择使用本地缓存数据,则基于本地缓存更新远端数据库。作为优选的,则基于本地缓存更新远端数据库,具体包括:对比本地缓存与远端数据库的所有数据,若判断获知目标数据在本地缓存中存在,且在远端数据库中不存在,则将所述目标数据插入到远端数据库。作为优选的,则基于本地缓存更新远端数据库,具体包括:对比本地缓存与远端数据库的所有数据,若判断获知目标数据在本地缓存和远端数据库中均存在,则基于本地缓存数据对远端数据库进行更新。作为优选的,则基于本地缓存更新远端数据库,具体包括:对比本地缓存与远端数据库的所有数据,若判断获知目标数据在本地缓存中不存在,且在远端数据库中存在,则删除远端数据库中的所述目标数据。第二方面,本专利技术实施例提供一种本地缓存与数据库数据同步装置,包括:比较模块,用于在使用本地缓存数据或远端数据库数据时,判断本地Redis是否为空,以及本地缓存与远端数据库的数据保存时间是否一致;同步模块,若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,则在使用本地缓存数据时,基于本地缓存更新远端数据库;若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,则在使用本地缓存数据时,清空本地缓存,并从远端数据库下载数据到本地缓存。第三方面,本专利技术实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本专利技术第一方面实施例所述本地缓存与数据库数据同步方法的步骤。第四方面,本专利技术实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本专利技术第一方面实施例所述本地缓存与数据库数据同步方法的步骤。本专利技术实施例提供的一种本地缓存与数据库数据同步方法和装置,综合考虑了当前业务场景存在的数据变更情况,通过已有数据同步结合的方式,能够实现本地缓存与远端数据库数据一致性的要求;解决了现有技术中,在数据提交时做一次数据同步是不满足当前的业务需求的,当存在其它人员修改了当前数据的情况,会导致当前作业数据与远端数据库数据不一致的情况,数据不同步的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为根据本专利技术实施例的本地缓存与数据库数据同步方法流程框图;图2为根据本专利技术实施例的一种电子设备结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列部件或单元的系统、产品或设备没有限定于已列出的部件或单元,而是可选地还包括没有列出的部件或单元,或可选地还包括对于这些产品或设备固有的其它部件或单元。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在现有的数据同步方案中,主要是通过判断数据是否存在,如果存在,则直接返回缓存好的数据,如果不存在,读取数据库数据,并将数据缓存到Redis,此场景只适用于数据量较大,但不经常更新的情况。上述方法,难以满足现有当前的大量数据更新业务处理的需求。在目前业务场本文档来自技高网...

【技术保护点】
1.一种本地缓存与数据库数据同步方法,其特征在于,包括:/n若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,则在使用本地缓存数据时,基于本地缓存更新远端数据库。/n

【技术特征摘要】
1.一种本地缓存与数据库数据同步方法,其特征在于,包括:
若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,则在使用本地缓存数据时,基于本地缓存更新远端数据库。


2.根据权利要求1所述的本地缓存与数据库数据同步方法,其特征在于,还包括:
若判断获知本地Redis为空,则清空本地缓存,并从远端数据库下载数据到本地缓存;
若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间一致,则清空本地缓存,并从远端数据库下载数据到本地缓存。


3.根据权利要求1所述的本地缓存与数据库数据同步方法,其特征在于,还包括:
若判断获知本地Redis不为空,且本地缓存与远端数据库的数据保存时间不一致,基于业务员选择使用本地缓存数据或远端数据库数据。


4.根据权利要求3所述的本地缓存与数据库数据同步方法,其特征在于,基于业务员选择使用本地缓存数据或远端数据库数据,具体包括:
若判断获知业务员选择使用远端数据库数据,则清空本地缓存,并从远端数据库下载数据到本地缓存;
若判断获知业务员选择使用本地缓存数据,则基于本地缓存更新远端数据库。


5.根据权利要求4所述的本地缓存与数据库数据同步方法,其特征在于,则基于本地缓存更新远端数据库,具体包括:
对比本地缓存与远端数据库的所有数据,若判断获知目标数据在本地缓存中存在,且在远端数据库中不存在,则将所述目标数据插入到远端数据库。


6.根据权利要求4所述的本地缓存与...

【专利技术属性】
技术研发人员:胡婉利姚懿丹逯梦强罗跃军
申请(专利权)人:武汉中海庭数据技术有限公司
类型:发明
国别省市:湖北;42

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

1