[发明专利]数据回滚的处理方法和装置有效

专利信息
申请号: 201310754233.6 申请日: 2013-12-31
公开(公告)号: CN103699681B 公开(公告)日: 2017-01-04
发明(设计)人: 徐文韬;聂愿愿;谢锐 申请(专利权)人: 华为技术有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京同立钧成知识产权代理有限公司11205 代理人: 刘芳
地址: 518129 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 数据 处理 方法 装置
【说明书】:

技术领域

发明实施例涉及数据库技术领域,尤其涉及一种数据回滚的处理方法和装置。

背景技术

数据库中包含大量的数据,用户可以通过数据库事务(Database Transaction,下述简称为事务)访问该数据库,以获得所需的结果。通常事务对数据库的访问,会使数据库中的一些数据发生更新,出现新版本的数据。但现有的数据库中,多个事务会同时执行,则一个事务的访问造成了数据库中数据的更新,导致另一个事务所使用的数据前后不一致,影响数据库对用户的服务。举例来说,事务1在数据库内的一个数据文件中获取了数据A,随后事务2访问了该数据文件,并将该数据文件中的数据A更新为数据B,即此时数据A为旧版本数据,而数据B为新版本数据;若事务1需要再次访问该数据空间时,则为了保证事务1前后获取的数据一致,在事务2更新上述数据文件时,需要将数据A作为回滚数据另行存储,以供事务1再次访问。

常见的,Sql Server可使用临时数据库(Tempdb)的方式存储回滚数据。Tempdb是一个临时数据库,可被多个数据库共享,则回滚数据被存储至tempdb中。其中,Sql Server使用了内部对象(Append-Only Store)以管理tempdb中的数据;即tempdb中的回滚数据被存储至一个Append-Only Store中,每隔一段时间或Append-Only Store中积累一定数量的数据后,就会创建一个新的Append-Only Store,以继续存储回滚数据。

但采用上述方案时发现,多个事务会使用同一个Append-Only Store,使得多个事务的并发效率降低,影响各个事务访问回滚数据的效率,从而降低了数据库的工作性能。

发明内容

本发明实施例提供一种数据回滚的处理方法和装置,用于合理的对各个回滚段进行管理,保证了多个事务的并发特性,提高了数据库系统的工作性能。

第一方面,本发明实施例提供一种数据回滚的处理方法,包括:

当数据库系统接收到第一事务时,在所述数据库系统的各个列表所存储的各个回滚段中,确定分配于所述第一事务的第一回滚段;所述回滚段用于存储事务访问数据文件产生的回滚数据;

针对所述第一事务,记录第一回滚段的使用情况;

根据所述第一回滚段的使用情况,将使用后的第一回滚段存储至对应的列表中;

其中,所述各个列表包括重用列表、空闲列表和完成列表,所述重用列表中的每个回滚段中存储了回滚数据,且具有剩余存储空间,所述空闲列表中的每个回滚段中无回滚数据,所述完成列表中的每个回滚段中不具有剩余存储空间。

结合第一方面,在第一实施方式中,所述在所述数据库系统的各个列表中所存储的各个回滚段中,确定分配于所述第一事务的第一回滚段,包括:

若所述重用列表中包括至少一个回滚段,则确定重用列表中最先存储的回滚段为所述第一回滚段,并在所述重用列表中删除该最先存储的回滚段;

若所述重用列表中不包括所述回滚段,则在所述空闲列表中确定所述第一回滚段。

结合第一方面第一实施方式,在第二实施方式中,所述在所述空闲列表中确定所述第一回滚段,包括:

若所述空闲列表包括至少一个回滚段,则将所述空闲列表中的一个回滚段作为所述第一回滚段,并将所述空闲列表中的该回滚段删除;

若所述空闲列表不包括回滚段,则判断所述数据库系统中的全部回滚段的数量是否已达到上限;

若否,创建新增回滚段作为所述第一回滚段;

若是,则进行清理算法,并在进行了所述清理算法之后的空闲列表中,确定任意一个回滚段作为所述第一回滚段。

结合第一方面第二实施方式,在第三实施方式中,所述清理算法包括:

由所述完成列表中最先存储的回滚段开始,依照存储的先后顺序,依次判断出所述完成列表中可回收的回滚段;

将所述可回收的回滚段由所述完成列表中删除,并存储至所述空闲列表中,获得所述进行了所述清理算法之后的空闲列表。

结合第一方面第三实施方式,在第四实施方式中,所述判断出所述完成列表中可回收的回滚段,包括:

根据所述完成列表中的待判断回滚段对应的最新使用情况,确定所述最新使用情况对应的第二事务;

若所述第二事务的访问时间不滞后于所述数据库系统中的当前事务的访问时间,则确定所述待判断回滚段为所述可回收的回滚段。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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