[发明专利]一种事务日志的缓存方法、装置、设备和存储介质有效
申请号: | 202010505738.9 | 申请日: | 2020-06-05 |
公开(公告)号: | CN111694806B | 公开(公告)日: | 2023-10-27 |
发明(设计)人: | 王海龙;沈宁;韩朱忠 | 申请(专利权)人: | 上海达梦数据库有限公司 |
主分类号: | G06F16/18 | 分类号: | G06F16/18;G06F16/172 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 201203 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 事务 日志 缓存 方法 装置 设备 存储 介质 | ||
本发明实施例公开了一种事务日志的缓存方法、装置、设备和存储介质。其中,该方法包括:如果检测到当前物理事务的提交指令,则确定所述当前物理事务的适配日志包,所述适配日志包的剩余缓存空间支持所述当前物理事务内事务日志的全部缓存;在所述适配日志包中缓存所述当前物理事务内的事务日志,并更新所述适配日志包下的有效日志偏移,以按照该有效日志偏移对所述适配日志包内的事务日志进行刷盘。本发明实施例提供的技术方案,避免一个物理事务内的事务日志横跨多个日志包缓存,无需对当前物理事务进行日志解析,提高事务日志的缓存效率,同时避免刷盘后的事务日志出现空洞区域的问题,减少事务日志的缓存空间浪费。
技术领域
本发明实施例涉及数据库处理领域,尤其涉及一种事务日志的缓存方法、装置、设备和存储介质。
背景技术
目前,为了提升和优化数据库事务在执行过程中所生成的事务日志的刷盘效率,会预先设置一个日志缓冲区,由该日志缓冲区在数据库事务的执行过程中不断缓存相应的事务日志;而由于数据库事务中包含的数据操作过多,可能会使日志缓存存在遗漏,因此会将数据库事务划分成多个物理事务,每个物理事务内仅存在少量的数据操作。此时,在每一物理事务提交时,将该物理事务内的事务日志写入到日志缓冲区内,而在数据库事务提交或者日志缓冲区被写满时,触发日志缓冲区的日志刷盘操作。
但是,由于日志缓冲区由一系列配置为固定内存(如512字节)的日志文件页组成,在日志缓冲区内通过每个日志文件页来存储事务日志的控制和校验等信息,如8个字节的日志序号、2个字节的日志有效数据长度和2个字节的校验码等,使得日志文件页的有效日志空间较少。
此时,一个物理事务内的事务日志也可能跨过多个日志文件页缓存,因此需要对物理事务进行解析才能在多个日志文件页中格式化缓存,极大影响了事务日志的缓存效率;同时,每个日志文件页都有自己的结构化头,占用了大量额外空间,且物理事务的头信息不能跨页,导致日志文件页缓存事务日志时会存在空洞区域,并未完全被填满,从而浪费日志缓冲区内的部分缓存空间。
发明内容
本发明实施例提供了一种事务日志的缓存方法、装置、设备和存储介质,减少事务日志的缓存空间浪费,提高事务日志的缓存效率。
第一方面,本发明实施例提供了一种事务日志的缓存方法,该方法包括:
如果检测到当前物理事务的提交指令,则确定所述当前物理事务的适配日志包,所述适配日志包的剩余缓存空间支持所述当前物理事务内事务日志的全部缓存;
在所述适配日志包中缓存所述当前物理事务内的事务日志,并更新所述适配日志包下的有效日志偏移,以按照该有效日志偏移对所述适配日志包内的事务日志进行刷盘。
第二方面,本发明实施例提供了一种事务日志的缓存装置,该装置包括:
适配包确定模块,用于如果检测到当前物理事务的提交指令,则确定所述当前物理事务的适配日志包,所述适配日志包的剩余缓存空间支持所述当前物理事务内事务日志的全部缓存;
事务日志缓存模块,用于在所述适配日志包中缓存所述当前物理事务内的事务日志,并更新所述适配日志包下的有效日志偏移,以按照该有效日志偏移对所述适配日志包内的事务日志进行刷盘。
第三方面,本发明实施例提供了一种设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所述的事务日志的缓存方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述的事务日志的缓存方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010505738.9/2.html,转载请声明来源钻瓜专利网。