[发明专利]日志管理方法和装置在审

专利信息
申请号: 201310690278.1 申请日: 2013-12-16
公开(公告)号: CN103678608A 公开(公告)日: 2014-03-26
发明(设计)人: 佟强 申请(专利权)人: 华为技术有限公司
主分类号: G06F17/30 分类号: G06F17/30;G06F11/34
代理公司: 北京林达刘知识产权代理事务所(普通合伙) 11277 代理人: 刘新宇
地址: 518129 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 日志 管理 方法 装置
【说明书】:

技术领域

发明涉及数据库领域,尤其涉及一种日志管理方法和装置。

背景技术

目前,大部分磁盘数据库系统基于先写日志(Write-Ahead Logging,WAL)方法实现事务的持久化,执行数据库更新时将更新操作记录到事务日志中,在事务提交时刷新日志到磁盘,被修改的脏页通过周期的执行检查点(check point,CKP)把这些脏页刷新到磁盘中。数据库由于断电或其他原因导致非正常停止,数据库系统可以根据事务日志执行数据页的恢复操作。

数据库恢复的过程中可能出现部分写(Partial write)问题,原因是数据库从检查点刷新脏页的时候,如果有的脏页没有完全写入磁盘就发生了断电,这些脏页可能仅仅写入部分数据。在数据库恢复的过程中,如果发现需要恢复的数据页不完整,则无法采用事务日志继续恢复。

为了解决部分写问题,可以采用开源数据库系统(Postgresql)的写全页日志记录的方法。由于数据页是在检查点被刷新到磁盘的,如果数据页在某一检查点被刷新到磁盘之后出现第一次更新操作,该第一次更新操作将导致数据页由干净页(clean page)变为脏页(dirty page),这时可以在事务日志中记录整个数据页的全页日志记录,在第一次更新操作之后的其他更新操作,事务日志可以只保存该数据页的更新日志记录。在数据恢复过程中,如果发现该数据页不完整,可以确定该数据页出现更新操作的最近的一次检查点,从该检查点之后的全页日志记录中得到该数据页的完整信息。

但是,通常,两个检查点之间的时间间隔不长,更新频繁的数据页会不断被刷新到磁盘,然后又重新从干净页变为脏页,这会导致事务日志中记录的全页日志记录非常多,由于全页日志记录的数据量大,导致事务日志所占用的空间也较大,并且会增加事务日志刷新的磁盘输入输出(Input and Output,IO),导致数据库恢复时间增加。

发明内容

有鉴于此,本发明要解决的技术问题是,如何减少事务日志所占用的磁盘空间。

为了解决上述技术问题,第一方面,本发明提供了一种日志管理方法,包括:

在数据库的数据页发生更新时,检查所述数据库的事务日志中是否存在所述数据页对应的全页日志记录;

若所述事务日志中存在所述数据页对应的全页日志记录,则在所述事务日志中记录所述数据页对应的更新日志记录。

结合第一方面,在第一种可能的实现方式中,包括:

若所述事务日志中不存在所述数据页对应的全页日志记录,则在所述事务日志中记录对所述数据页更新后的数据页对应的全页日志记录。

结合第一方面或第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述检查所述数据库的事务日志中是否存在所述数据页对应的全页日志记录,包括:

根据所述数据页记录的所述全页日志记录对应的序列号,查找所述数据库的事务日志中是否存在所述数据页对应的全页日志记录。

结合第一方面的第二种可能的实施方式,在第三种可能的实施方式中,根据所述数据页中记录的所述全页日志记录对应的序列号,查找所述数据库的事务日志中是否存在所述数据页对应的全页日志记录,包括:

若所述数据页中记录的所述全页日志记录对应的序列号大于或等于所述事务日志中的所有日志记录序列号中的最小序列号,则确定所述事务日志中存在所述数据页对应的全页日志记录;

若所述数据页中记录的所述全页日志记录对应的序列号小于所述事务日志中的所有日志记录序列号中的最小序列号,则确定所述事务日志中不存在所述数据页对应的全页日志记录。

结合第一方面以及第一方面的第一种可能的实施方式至第三种可能的实施方式中的任意一个,在第四种可能的实施方式中,在检查所述数据库的事务日志中是否存在所述数据页对应的全页日志记录之后,还包括:

若所述事务日志中存在所述数据页对应的全页日志记录,且所述事务日志满足重新记录全页日志记录的条件,则在所述事务日志中重新记录所述数据页当前的全页日志记录,并在所述数据页中将所述序列号更新为所述数据页当前的全页日志记录的序列号;

其中,所述重新记录全页日志记录的条件包括以下任意一种:

从所述数据页对应的全页日志记录开始到当前正在更新的数据页对应的日志记录之间的日志数据量大于或等于设定的数据量阈值;

从所述数据页对应的全页日志记录开始到当前正在更新的数据页对应的日志记录之间的日志数目大于或等于设定的日志数目阈值;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310690278.1/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top