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

文档序号:16608857发布日期:2019-01-14 21:24阅读:147来源:国知局
一种数据更新方法及系统与流程

本发明涉及数据处理技术领域,特别是涉及一种数据更新方法及系统。



背景技术:

目标认证系统主要为公司用户提供认证,判断用户的权限。目前移动终端调用认证接口对用户的权限进行认证,大部分的用户都是未认证的用户,所以认证接口增加了本地缓存,本地缓存中存储了所有认证用户身份证明,当用户在本地缓存中时,则直接通过认证。

在更新本地缓存的过程中,所有服务器定时从关系型数据库管理系统中加载全部数据至本地缓存中进行存储,由于服务器过多且对关系型数据库管理系统中的数据进行定时获取,因此对关系型数据库管理系统的访问频繁,从而导致关系型数据库管理系统的访问压力过大。



技术实现要素:

本发明提供了一种数据更新方法及系统,以解决现有技术中存在的数据的获取对关系型数据库管理系统造成访问压力大的问题。

为了解决上述问题,本发明公开了一种数据更新方法,所述方法包括:当关系型数据库管理系统中存在数据更新时,生成目标数据;分布式缓存系统接收所述关系型数据库管理系统发送的所述目标数据,并缓存;当服务器确定所述分布式缓存系统中缓存有所述目标数据时,从所述分布式缓存系统获取所述目标数据,并添加至本地缓存中。

优选地,所述当关系型数据库管理系统中存在数据更新时,生成目标数据的步骤包括:当关系型数据库管理系统中存在数据更新时,依据更新的数据生成数据日志;根据所述数据日志获取目标数据。

优选地,所述分布式缓存系统接收所述关系型数据库管理系统发送的所述目标数据,并缓存的步骤包括:所述分布式缓存系统接收所述关系型数据库管理系统发送的所述目标数据;所述分布式缓存系统判断所述目标数据是否与所述分布式缓存系统中的数据列表匹配;若是,缓存所述目标数据。

优选地,在所述分布式缓存系统接收所述关系型数据库管理系统发送的所述目标数据,并缓存的步骤之后,所述方法还包括:分布式协调系统更改节点值,其中,所述分布式协调系统的节点值指示所述分布式缓存系统是否存在目标数据;所述当服务器确定所述分布式缓存系统中缓存有所述目标数据时,从所述分布式缓存系统获取所述目标数据,并添加至本地缓存中的步骤,包括:当所述服务器监听到所述分布式协调系统的节点值被更改时,确定所述分布式缓存系统中缓存有所述目标数据;从所述分布式缓存系统中获取所述目标数据,并添加至本地缓存中。

本发明还公开了一种数据更新系统,所述系统包括:关系型数据库管理系统、分布式缓存系统以及服务器;所述关系型数据库管理系统,用于当存在数据更新时,生成目标数据;所述分布式缓存系统,用于接收所述关系型数据库管理系统发送的所述目标数据,并缓存;所述服务器,用于当确定所述分布式缓存系统中缓存有所述目标数据时,从所述分布式缓存系统获取所述目标数据,并添加至本地缓存中。

优选地,所述关系型数据库管理系统具体用于:当存在数据更新时,依据更新的数据生成数据日志;根据所述数据日志获取目标数据。

优选地,所述分布式缓存系统具体用于:接收所述关系型数据库管理系统发送的所述目标数据;判断所述目标数据是否与所述分布式缓存系统中的数据列表匹配;若是,缓存所述目标数据。

优选地,所述数据更新系统还包括分布式协调系统:分布式协调系统用于在所述分布式缓存系统接收所述关系型数据库管理系统发送的所述目标数据并缓存之后,更改节点值,其中,所述分布式协调系统的节点值指示所述分布式缓存系统是否存在目标数据;所述服务器具体用于:当监听到所述分布式协调系统的节点值被更改时,确定所述分布式缓存系统中缓存有所述目标数据;从所述分布式缓存系统中获取所述目标数据,并添加至本地缓存中。

与现有技术相比,本发明具有以下优点:

通过本发明实施例提供的数据更新方法,当关系型数据库管理系统中存在数据更新时,生成目标数据;分布式缓存系统接收关系型数据库管理系统发送的目标数据,并缓存;当服务器确定分布式缓存系统中缓存有目标数据时,从分布式缓存系统中获取目标数据并添加至本地缓存中。本发明实施例提供的数据更新方法,服务器在确定分布式缓存系统中缓存有目标数据后,再主动从分布式缓存系统中获取目标数据,无需按照预设时间间隔轮询关系型数据管理系统,不仅可减轻服务器对关系型数据库管理系统的访问压力还可以减轻服务器的访问负荷。

附图说明

图1是本发明实施例一的一种数据更新方法的步骤流程图;

图2是本发明实施例二的一种数据更新方法的步骤流程图;

图3是本发明实施例三的一种数据更新系统的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

实施例一

参照图1,示出了本发明实施例一的一种数据更新方法的步骤流程图。

本发明实施例提供的数据更新方法包括以下步骤:

步骤101:当关系型数据库管理系统中存在数据更新时,生成目标数据。

更新数据可以包括:新添加的数据和原有数据做修改后的数据。其中,新添加的数据可以为新用户在认证系统中完成认证时所生成的用户信息,原有数据做修改后的数据可以为已认证用户修改后的用户信息。

步骤102:分布式缓存系统接收关系型数据库管理系统发送的目标数据,并缓存。

当关系型数据库管理系统存在更新数据时,将更新的目标数据发送至分布式缓存系统,分布式缓存系统将目标数据缓存。

分布式缓存系统是一个分布式的,开放源码的分布式应用程序协调服务,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

由于分布式缓存系统不存在类似于服务器的重启的问题,因此使用分布式缓存系统缓存目标数据,可以避免因分布式缓存系统重启而导致的目标数据的丢失的问题。

步骤103:当服务器确定分布式缓存系统中缓存有目标数据时,从分布式缓存系统获取目标数据,并添加至本地缓存中。

在具体实现过程中,一种服务器确定分布式缓存系统中是否缓存有目标数据的方式为:分布式缓存系统在缓存完目标数据后,向该目标数据对应的服务器发送目标数据缓存完成通知,服务器依据接收到的通知可确定分布式缓存系统中缓存有目标数据。

另一种为:服务器监听分布式缓存系统中是否缓存有目标数据。

当服务器确定分布式缓存系统中缓存有目标数据时,主动从分布式缓存系统中获取目标数据,每个服务器下对应一个本地缓存,服务器获取到目标数据时,将目标数据添加至本地缓存中。通过本发明实施例提供的数据更新方法,当关系型数据库管理系统中存在数据更新时,生成目标数据;分布式缓存系统接收关系型数据库管理系统发送的目标数据并缓存;当服务器确定分布式缓存系统中缓存有目标数据时,从分布式缓存系统中获取目标数据并添加至本地缓存中。本发明实施例提供的数据更新方法,服务器在确定分布式缓存系统中缓存有目标数据后,再主动从分布式缓存系统中获取目标数据,无需按照预设时间间隔轮询关系型数据管理系统,不仅可减轻服务器对关系型数据库管理系统的访问压力还可以减轻服务器的访问负荷。实施例二

参照图2,示出了本发明实施例二的一种数据更新方法的步骤流程图。

本发明实施例提供的数据更新方法包括以下步骤:

步骤201:当关系型数据库管理系统中存在数据更新时,依据更新的数据生成数据日志。

当关系型数据库管理系统存在数据更新时,关系型数据库管理系统会依据更新的数据生成数据日志。数据日志是用于记录系统操作事件的记录文件或文件集合,具有处理历史数据、诊断问题的追踪以及理解系统的活动等重要作用。

现有技术中服务器需定时访问关系型数据库管理系统中的每个数据,以获取更新的数据。服务器可依据关系型数据库管理系统中每个数据对应的生成时间来确定其是否为更新的数据,若数据对应的生成时间在服务器前一次访问关系型数据库管理系统之前,则可确定其并非更新的数据;反之,若数据对应的生成时间在服务器前一次访问关系型数据库管理系统之后,则可确定其为更新的数据。现有技术中服务器定时访问关系型数据库管理系统中的每个数据,获取更新的数据时,存在更新数据获取不完全的问题。例如服务器可每隔一分钟访问一次关系型数据库管理系统,在进行一次访问时若服务器在一分钟内可能无法对关系型数据库管理系统中所有数据进行访问,最终将无法获取全部的更新数据。而本步骤中当关系型数据库管理系统存在数据更新时,直接依据更新的数据生成数据日志,根据数据日志获取目标数据,最终目标数据被缓存至分布式缓存系统中,服务器确定分布式缓存系统中缓存有目标数据时,可直接针对性的获取缓存的全部目标数据,因此能够避免服务器获取更新数据不完全的问题。

步骤202:根据数据日志获取目标数据。

通过关系型数据库管理系统的读取方式读取对应的数据日志,并将数据日志发送至消息队列中,消息队列可以把数据进行持久化存储直到它们已经被完全处理,因此将数据日志发送至消息队列中,可以避免数据丢失的风险。

具体地,关系型数据库管理系统所生成的数据日志,作用是用来记录关系型数据库管理系统内部增删改查等,对关系型数据库管理系统有更新的内容的记录,基于关系型数据库管理系统的读取方式,依据数据日志确定数据在关系型数据库管理系统中的位置,并获取该位置处的数据作为目标数据。

步骤203:分布式缓存系统接收关系型数据库管理系统发送的目标数据。

步骤204:分布式缓存系统判断目标数据是否与分布式缓存系统中的数据列表匹配。

判断目标数据与分布式缓存系统中的数据列表是否匹配,由于当关系型数据库管理系统的数据发生更新时,更新的数据不一定为服务器所需要缓存的数据,因此需要根据分布式缓存系统中的数据列表判断目标数据是否为服务器的本地缓存所需要缓存的数据。

具体地,数据列表中包含各需要数据的标识,将各目标数据的标识分别与数据列表中的各标识进行匹配,当匹配时,将标识一致的目标数据确定为与数据列表匹配的数据。

例如:当数据列表中的标识为用户信息的uid(useridentification,用户识别)时,则判断每个目标数据的标识是否为uid,若是,则该目标数据确定为与数据列表匹配的数据。

步骤205:若是,缓存该目标数据。

若目标数据与分布式缓存系统中的数据列表匹配,分布式缓存系统将缓存关系型数据库管理系统发送的该目标数据。

需要说明的是,目标数据为至少一个,当目标数据为多个时,分别将每个目标数据的标识与数据列表的标识进行匹配,将匹配成功的目标数据进行缓存,当目标数据为一个时,仅将该目标数据的标识与数据列表中的标识进行匹配即可,当匹配成功,将该目标数据进行缓存。

步骤206:分布式协调系统更改节点值。

其中,分布式协调系统的节点值指示分布式缓存系统是否存在目标数据。

分布式协调系统用来判断分布式缓存系统中是否存在目标数据。当监测到分布式缓存系统存在目标数据时,则更改分布式协调系统的节点值。例如:分布式协调系统可在监测到分布式缓存系统中存在目标数据时,将节点值更改为1,当监测到分布式缓存系统中不存在目标数据时,将节点值更改为0。具体地,当服务器从分布式缓存系统中将目标数据获取后,分布式缓存系统可将所缓存的目标数据删除,相应地,分布式协调系统将监测到分布式缓存系统中不再存在目标数据。

分布式缓存系统是一个分布式的,开放源码的分布式应用程序协调服务,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

步骤207:当服务器监听到分布式协调系统的节点值被更改时,确定分布式缓存系统中缓存有目标数据;从分布式缓存系统中获取目标数据,并添加至本地缓存中。

当服务器监听到分布式协调系统的节点值被更改时,则表明分布式缓存系统中存在更新的目标数据,从而确定关系型数据库管理系统的数据存在更新,服务器从分布式缓存系统中获取目标数据,并添加至本地缓存中。

通过本发明实施例提供的数据更新方法,除具有实施例一中所示的数据更新方法所具有的有益效果外,服务器还可以通过判断分布式协调系统的节点值是否被更改来确认分布式缓存系统中是否存在目标数据,能够避免服务器盲目访问分布式缓存系统对分布式缓存系统,能够减轻分布式缓存系统的被访问压力。

实施例三

参照图3,示出了本发明实施例三提供的一种数据更新系统的结构框图。

本发明实施例提供的数据更新系统包括:关系型数据库管理系统301、分布式缓存系统302以及服务器303。

所述关系型数据库管理系统301,用于当存在数据更新时,生成目标数据;所述分布式缓存系统302,用于接收所述关系型数据库管理系统发送的所述目标数据并缓存;所述服务器303,用于当服务器确定分布式缓存系统中缓存有所述目标数据时,从所述分布式缓存系统获取所述目标数据,并添加至本地缓存中。

优选地,所述关系型数据库管理系统301具体用于:当存在数据更新时,依据更新的数据生成数据日志;根据所述数据日志获取目标数据。

优选地,所述分布式缓存系统302具体用于:接收所述关系型数据库管理系统301发送的所述目标数据;判断所述目标数据是否与所述分布式缓存系统中的数据列表匹配;若是,缓存所述目标数据。

优选地,所述数据更新系统还包括分布式协调系统304,分布式协调系统304,用于在所述分布式缓存系统302接收所述关系型数据库管理系统发送的所述目标数据,并缓存之后,更改节点值,其中,所述分布式协调系统的节点值指示所述分布式缓存系统是否存在目标数据;所述服务器303具体用于:当监听到所述分布式协调系统的节点值被更改时,确定所述分布式缓存系统中缓存有所述目标数据,从所述分布式缓存系统中获取所述目标数据,并添加至本地缓存中。

通过本发明实施例提供的数据更新系统,当关系型数据库管理系统中存在数据更新时,生成目标数据;分布式缓存系统接收关系型数据库管理系统发送的目标数据,并缓存;分布式缓存系统将目标数据发送至服务器;服务器将目标数据添加至本地缓存中。通过本发明实施例提供的数据更新系统,服务器在确定分布式缓存系统中缓存有目标数据后,再主动从分布式缓存系统中获取目标数据,无需按照预设时间间隔轮询关系型数据管理系统,不仅可减轻服务器对关系型数据库管理系统的访问压力还可以减轻服务器的访问负荷。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上对本发明所提供的一种数据更新方法及系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1