数据缓存方法、装置、终电子设备及存储介质制造方法及图纸

技术编号:21343403 阅读:20 留言:0更新日期:2019-06-13 22:25
本公开实施例公开了一种数据缓存方法、装置、电子设备及存储介质。其中,该数据缓存方法包括:当检测到本地数据库的数据变更事件时,获取本地数据库生成的日志信息;对所述日志信息进行解析,根据解析结果更新本地缓存。本公开实施例的技术方案,通过对本地数据库的数据变更事件时生成的日志信息进行解析,由于日志信息记录有本地数据库的数据信息以及数据操作信息,因此,根据解析结果更新本地缓存,解决由于本地缓存更新不及时所导致的用户体验差的技术问题,不仅能够保证本地缓存的及时更新,还保持本地缓存与本地数据的一致性。

Data caching method, device, terminal electronic equipment and storage medium

The embodiment of the present disclosure discloses a data buffer method, device, electronic device and storage medium. Among them, the data caching method includes: when the data change event of the local database is detected, the log information generated by the local database is obtained; the log information is parsed, and the local cache is updated according to the parsing results. The technical scheme of the present disclosure embodies that by parsing the log information generated during the data change event of the local database, since the log information records the data information of the local database and the data operation information, the local cache is updated according to the parsing result to solve the technical problem of poor user experience caused by the untimely update of the local cache. Ensure that the local cache is updated in time, and maintain the consistency between the local cache and the local data.

【技术实现步骤摘要】
数据缓存方法、装置、终电子设备及存储介质
本公开实施例涉及计算机应用
,尤其涉及一种数据缓存方法、装置、电子设备及存储介质。
技术介绍
目前,数据库一般都设置有数据缓存机制。数据库的本地缓存一般用于存储用户使用过的数据。当接收到用户的数据使用请求时,可以先查看本地数据库中是否有用户所要使用的数据,如果有,则可以直接以本地缓存的数据响应用户的数据使用请求,无需从数据库重新拉取数据,一方面可以缓解数据库的压力,另一方面能够快速响应用户的访问请求。但是,如果本地数据库的数据已经发生变更,而本地缓存的数据更新不及,则会导致本地缓存和本地数据库中的数据不一致,即,用户无法通过本地缓存访问到数据变更后的新数据,影响用户体验。
技术实现思路
本公开实施例提供了一种数据库的数据缓存方法、装置、电子设备及存储介质,以解决由于本地缓存更新不及时所导致的用户体验差的技术问题,保证本地缓存和本地数据的一致性。第一方面,本公开实施例提供了一种数据缓存方法,该方法包括:当检测到本地数据库的数据变更事件时,获取本地数据库生成的日志信息;对所述日志信息进行解析,根据解析结果更新本地缓存。第二方面,本公开实施例还提供了一种数据缓存装置,该装置包括:日志信息获取模块,用于当检测到本地数据库的数据变更事件时,获取本地数据库生成的日志信息;本地缓存更新模块,用于对所述日志信息进行解析,根据解析结果更新本地缓存。第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:一个或多个处理装置;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现如本公开中任一实施例所述的数据库的数据同步方法。第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,本公开实施例还提供了一种所述计算机程序被处理器执行时实现如本公开中任一实施例所述的数据库的数据缓存方法。本公开实施例的技术方案,通过对本地数据库的数据变更事件时生成的日志信息进行解析,由于日志信息记录有本地数据库的数据信息以及数据操作信息,因此,根据解析结果更新本地缓存,解决由于本地缓存更新不及时所导致的用户体验差的技术问题,不仅能够保证本地缓存的及时更新,还保持本地缓存与本地数据的一致性。附图说明图1是本公开实施例一所提供的一种数据缓存方法的流程示意图;图2是本公开实施例二所提供的一种数据缓存方法的流程示意图;图3是本公开实施例二所提供的一种数据缓存方法的可选实例示意图;图4是本公开实施例三所提供的一种数据缓存装置的结构示意图;图5是本公开实施例四所提供的一种电子设备的结构示意图。具体实施方式下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分而非全部结构。下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。实施例一图1为本公开实施例一所提供的一种数据缓存方法的流程图,本实施例尤其适用于数据互通状态下对本地缓存进行及时更新的情况,该方法可以由数据缓存装置来执行,该数据缓存装置可以配置于终端或服务器中用于实现本公开实施例的数据缓存方法。如图1所示,本实施例的方法具体可包括:S110、当检测到本地数据库的数据变更事件时,获取本地数据库生成的日志信息。示例性地,当检测到本地数据库的数据变更事件时,获取本地数据库的日志信息,可以包括:当检测到本地数据库数据的本地变更操作时,获取所述本地数据库的日志信息,其中,所述本地变更操作可包括对本地数据库执行的修改、写入和/或删除等操作。如果本地数据库与对端数据库存在数据互通,则对端数据库的异地数据变更也会对本地数据库的数据产生影响。因此,当检测到本地数据库的数据变更事件时,获取本地数据库的日志信息,还可以包括:当接收到对端数据库传输的待同步数据时,获取本地数据库的日志信息。可以理解的,对端数据库传输的待同步数据可包括经对端数据库的对端变更操作所产生的且需要同步至本地数据库的数据。其中,对端数据库的对端变更操作可包括对对端数据库的数据所执行的修改、写入和/或删除等操作。可选地,本地数据库可通过数据复制中心组件与对端数据库进行数据互通,也就是说,可控制本地数据库通过数据复制中心组件接收对端数据库传输的待同步数据。在本公开实施例中,日志信息可来源于本地数据库生成的日志文件,可用于记录本地数据库一整条数据流的变化,同时记录数据信息以及数据操作,不仅能够保证数据库的执行顺序,而且能够保证数据不丢失。因此,获取日志信息就能够获取到本地数据库所述数据信息以及数据操作。需要说明的是,可以是在本地数据库的数据发生变更时,实时获取日志信息。一条一条获取,不是一次性获取,以便根据数据变更情况实时更新缓存。可以理解的是,在本地数据库的本地缓存的使用过程中,可能会涉及多次更新缓存的操作,如果每次都对全部日志信息进行分析,针对只是部分数据更改的情况,并不适用,会增加数据分析的时间成本,因此,在获取本地数据库生成的日志信息时,还可以根据数据变更的时间和/或日志信息生成时间获取本地数据库生成的日志信息。S120、对所述日志信息进行解析,根据解析结果更新本地缓存。如上所述,由于日志信息中记录有本地数据库全部的数据信息以及数据操作,可选地,所述对所述日志信息进行解析,根据解析结果更新本地缓存,包括:解析出所述日志信息中的变更数据以及数据操作顺序信息,根据所述变更数据以及数据操作顺序信息更新本地缓存。其中,对所述日志信息进行解析的过程可以是逐条进行解析,当然为了提高解析效率,也可以是对多条所述日志信息同时进行解析。需要说明的是,在多条所述日志信息同时解析时,要保证日志信息中的原始生成顺序进行存储。在本公开实施例中,根据解析结果更新本地缓存,可包括:将本地缓存中的原始缓存数据删除,并将解析结果中的目标缓存数据写入本地缓存中。其中,将本地缓存中的原始缓存数据删除具体可以包括:根据缓存关键字映射逻辑对本地缓存中的数据进行数据删除。具体可包括:获取本地缓存中的目标删除数据在本地数据库中的数据库存储地址;根据缓存关键字映射逻辑将所述数据库存储地址映射为本地缓存中的关键字,并从缓存中删除所述关键字。其中,目标删除数据可以是本地缓存中当前所存储的所有数据。可以理解的是,所述缓存关键字映射逻辑中存储有数据在数据库中的数据库存储地址以及在本地缓存中的关键字之间的对应关系。示例性地,更新本地缓存具体可以是重复执行所述日志信息中所记录的与目标缓存数据对应的数据信息以及数据操作,更新本地缓存数据。其中,目标缓存数据可以根据用户实际需求进行确定,在此并不做限定。需要说明的是,为了保证缓存数据的准确定性,更新缓存要以数据库落盘为准,即,保证数据库落盘后再更新缓存。本公开实施例的技术方案,通过对本地数据库的数据变更事件时生成的日志信息进行解析,由于日志信息记录有本地数据库的数据信息以及数据操作信息,因此,根据解析结果更新本地缓存,解决由于本地缓存更新不及时所导致的用户体验差的技术问题,不仅能够保证本地缓存的及时更本文档来自技高网...

【技术保护点】
1.一种数据缓存方法,其特征在于,包括:当检测到本地数据库的数据变更事件时,获取本地数据库生成的日志信息;对所述日志信息进行解析,根据解析结果更新本地缓存。

【技术特征摘要】
1.一种数据缓存方法,其特征在于,包括:当检测到本地数据库的数据变更事件时,获取本地数据库生成的日志信息;对所述日志信息进行解析,根据解析结果更新本地缓存。2.根据权利要求1所述的方法,其特征在于,当检测到本地数据库的数据变更事件时,获取本地数据库的日志信息,包括下述操作中的至少一个:当接收到对端数据库传输的待同步数据时,获取本地数据库生成的日志信息;当检测到本地数据库数据的本地变更操作时,获取所述本地数据库生成的日志信息,其中,所述本地变更操作包括修改、写入和/或删除。3.根据权利要求2所述的方法,其特征在于,还包括:控制本地数据库通过数据复制中心组件接收对端数据库传输的待同步数据。4.根据权利要求1所述的方法,其特征在于,对所述日志信息进行解析,包括:控制所述本地数据库将所述日志信息发送给增量数据订阅与消费服务组件;基于所述增量数据订阅与消费服务组件对所述日志信息进行解析。5.根据权利要求1-4任一所述的方法,其特征在于,对所述日志信息进行解析,根据解析结果更新本地缓存,包括:解析出所述日志信息中的变更数据以及数据操作顺序信息,根据所述变更数据以及数据操作顺序信息更新本...

【专利技术属性】
技术研发人员:宋维捷
申请(专利权)人:北京字节跳动网络技术有限公司
类型:发明
国别省市:北京,11

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

1