缓存管理方法、装置、存储介质及电子设备制造方法及图纸

技术编号:33353173 阅读:63 留言:0更新日期:2022-05-08 10:03
根据本公开实施方式所提供的缓存管理方法、装置、存储介质及电子设备,通过基于配置文件读取至少一缓存准入规则;其中,所述至少一缓存准入规则包括与热数据特征相关的缓存准入规则;配置所述缓存准入规则至缓存准入控制模块;响应于输入的待缓存数据,所述缓存准入控制模块基于缓存准入规则匹配所述待缓存数据中的目标数据,并允许所述目标数据被写入所述缓存模块。由此,利用配置有与热数据特征相关缓存准入规则的缓存准入控制模块,以筛选符合规则的数据写入,从而提升缓存命中率。另外,还可以利用例如不同线程的异步缓存写入机制提升查询性能;又例如,利用对缓存数据的索引持久化及恢复以保持缓存数据可复用,提升查询效率和用户体验。效率和用户体验。效率和用户体验。

【技术实现步骤摘要】
缓存管理方法、装置、存储介质及电子设备


[0001]本公开的实施方式涉及数据库
,更具体地,本公开的实施方式涉及缓存管理方法、装置、存储介质及电子设备。

技术介绍

[0002]本部分旨在为权利要求中陈述的本公开的实施方式提供背景或上下文,此处的描述不因为包括在本部分中就承认是现有技术。
[0003]数据库的数据处理中的联机处理,可分为联机事务处理(On

line Transaction Processing,OLTP)和联机分析处理(On

Line Analytical Processing,OLAP)。OLTP主要针对数据处理;OLAP主要针对数据分析以挖掘数据价值。
[0004]在联机处理的数据查询引擎的数据处理过程中,需要先读取到数据源中的原始数据才能进行进一步的处理与计算,读取数据的快慢直接决定了整体执行的快慢,因而对读取数据环节的性能优化是必要的。为提高性能,目前已开始为数据查询引擎和数据库之间配置缓存模块,用于缓存数据库中的数据以便需要时能快速读取,以此提高数据读取的速度。

技术实现思路

[0005]在本上下文中,本公开的实施方式提供缓存管理方法、装置、存储介质及电子设备。
[0006]根据本公开的第一个方面,提供缓存管理方法,用于管理数据查询引擎使用的缓存模块,所述数据查询引擎用于向网络中的分布式数据库查询数据;所述方法包括:基于配置文件读取至少一缓存准入规则;其中,所述至少一缓存准入规则包括与热数据特征相关的缓存准入规则;配置所述缓存准入规则至缓存准入控制模块;响应于输入的待缓存数据,所述缓存准入控制模块基于缓存准入规则匹配所述待缓存数据中的目标数据,并允许所述目标数据被写入所述缓存模块。由此,利用配置有与热数据特征相关缓存准入规则的缓存准入控制模块,以筛选符合规则的数据写入,从而提升缓存命中率,提高了查询性能;可选的,所述缓存准入控制模块还可以用于作为控制指令输入的接口。
[0007]在第一方面的一些实施例中,所述方法还包括:响应于待写入所述缓存模块的所述目标数据,创建对应所述目标数据的缓存任务,并获取一缓冲区;读取线程读取所述目标数据并复制至所述缓冲区;缓存写入线程基于所述缓存任务从所述缓冲区读取所述目标数据,并将所述目标数据写入至所述缓存模块中。由此,通过与读取线程异步工作的缓存写入线程来负责目标数据写入缓存,在发生缓存未命中时,读取线程的工作从一次完整的缓存写入变化为一次向缓冲区的数据拷贝,显著提升读取线程返回数据给扫描线程的时间,避免因缓存未命中而带来的查询性能下降,提供了更加平滑的查询性能。
[0008]在第一方面的一些实施例中,所述缓存模块包括内存区域及磁盘区域;所述磁盘区域用于存放缓存数据;所述内存区域用于存放缓存元数据,所述缓存元数据用于索引所
述磁盘区域中的缓存数据;所述方法包括缓存持久化流程,其包括:响应于持久化指令,设置所述缓存模块为只读;创建中介对象,并存储所述缓存元数据和缓存数据的描述对象至所述中介对象;持久化处理所述中介对象以形成持久化数据,并存放于所述磁盘区域。通过在合适时机持久化及恢复用于索引缓存数据的缓存元数据,避免相关技术中重启后缓存数据不可复用而需要重新填充缓存数据的问题,有效提升查询效率及用户体验。
[0009]根据本公开的第二个方面,提供一种缓存管理装置,用于管理数据查询引擎使用的缓存模块,所述数据查询引擎用于向网络中的分布式数据库查询数据;所述装置包括:规则读取模块,用于基于配置文件读取至少一缓存准入规则;其中,所述至少一缓存准入规则包括与热数据特征相关的缓存准入规则;第一配置模块,用于配置所述缓存准入规则至一缓存准入控制模块;所述缓存准入控制模块,用于响应于输入的待缓存数据,基于缓存准入规则匹配所述待缓存数据中的目标数据,并允许所述目标数据被写入所述缓存模块。
[0010]根据本公开的第三个方面,提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现:如第一方面中任一项所述的缓存管理方法。
[0011]根据本公开的第四个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行:如第一方面中任一项所述的缓存管理方法。
[0012]利用配置有与热数据特征相关缓存准入规则的缓存准入控制模块,以筛选符合规则的数据写入,从而提升缓存命中率。另外,还可以利用例如不同线程的异步缓存写入机制提升查询性能;又例如,利用对缓存数据的索引持久化及恢复以保持缓存数据可复用,提升查询效率和用户体验。
附图说明
[0013]通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
[0014]图1示出了本公开一实施例中示例性的应用场景的架构示意图。
[0015]图2A示出了相关技术的一实施例中从缓存读取数据的原理示意图。
[0016]图2B示出了相关技术的一实施例中写入数据到缓存模块的原理示意图。
[0017]图3示出了本公开一实施例中缓存管理方法的流程示意图。
[0018]图4示出了本公开实施例中缓存管理方法中异步缓存写入的流程示意图。
[0019]图5示出了本公开一个应用示例中缓存写入流程的原理示意图。
[0020]图6A示出了本公开一实施例中缓存持久化流程的流程示意图。
[0021]图6B示出了本公开一实施例中缓存持久化及恢复流程的流程示意图。
[0022]图7示出了本公开一应用示例中持久化和恢复的流程示意图。
[0023]图8示出了本公开一实施例中缓存管理装置的模块架构示意图。
[0024]图9示出了本公开一实施例中存储介质的示意图。
[0025]图10示出了本公开一实施例中电子设备的结构示意图。
[0026]在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
[0027]下面将参考若干示例性实施方式来描述本公开的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0028]本领域技术人员知道,本公开的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
[0029]根据本公开的实施方式,提供缓存管理方法、装置、存储介质及电子设备。
[0030]在本文中,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
[0031]下面参考本公开的若干代表本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种缓存管理方法,用于管理数据查询引擎使用的缓存模块,其特征在于,所述数据查询引擎用于向网络中的分布式数据库查询数据;所述方法包括:基于配置文件读取至少一缓存准入规则;其中,所述至少一缓存准入规则包括与热数据特征相关的缓存准入规则;配置所述缓存准入规则至缓存准入控制模块;响应于输入的待缓存数据,所述缓存准入控制模块基于缓存准入规则匹配所述待缓存数据中的目标数据,并允许所述目标数据被写入所述缓存模块。2.根据权利要求1所述的缓存管理方法,其特征在于,所述配置文件还用于被写入对应所述缓存模块的控制指令;所述方法包括:基于所述配置文件获取所述控制指令;配置所述指令到所述缓存准入控制模块,用于触发相应控制动作。3.根据权利要求1所述的缓存管理方法,其特征在于,所述缓存准入规则包括以下至少一种:关于库级别的缓存准入规则;关于表级别的缓存准入规则;关于数据分区的缓存准入规则;关于数据按时间分区的缓存准入规则。4.根据权利要求1所述的缓存管理方法,其特征在于,包括:响应于待写入所述缓存模块的所述目标数据,创建对应所述目标数据的缓存任务,并获取一缓冲区;读取线程读取所述目标数据并复制至所述缓冲区;缓存写入线程基于所述缓存任务从所述缓冲区读取所述目标数据,并将所述目标数据写入至所述缓存模块中。5.根据权利要求1所述的缓存管理方法,其特征在于,所述缓存模块包括内存区域及磁盘区域;所述磁盘区域用于存放缓存数据;所述内存区域用于存放缓存元数据,所述缓存元数据用于索引所述磁盘区域中的缓存数据;所述方法包括缓存持久化流程,其包括:响应于持久化指令,设置所述缓存模块为...

【专利技术属性】
技术研发人员:汪源余利华蒋鸿翔叶子皓温正湖
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

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

1