[发明专利]表空间碎片回收方法、装置、电子设备及存储介质在审
申请号: | 201910873348.4 | 申请日: | 2019-09-16 |
公开(公告)号: | CN110597797A | 公开(公告)日: | 2019-12-20 |
发明(设计)人: | 刘昭毅;陈辉;秦亚杰;余杰;汪国辉 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
主分类号: | G06F16/215 | 分类号: | G06F16/215;G06F16/22;G06F12/02 |
代理公司: | 11313 北京市铸成律师事务所 | 代理人: | 阎敏;杨瑾瑾 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 表空间 空闲数据 物理顺序 数据页 末尾 数据库管理系统 磁盘空间 存储介质 电子设备 数据空间 碎片回收 申请 迁移 回收 释放 | ||
本申请公开了表空间碎片回收方法、装置、电子设备及存储介质,涉及数据库管理系统技术领域。具体实现方案为:将数据页中的数据按照物理顺序向前迁移,以在表空间的末尾构造出空闲数据页;所述表空间为多个数据页按照所述物理顺序构成的数据空间;释放所述表空间末尾的空闲数据页。本申请能够在不对磁盘空间带来额外压力的情况下实现对表空间碎片的回收。
技术领域
本申请涉及一种数据领域,尤其涉及一种数据库管理系统技术领域。
背景技术
MySQL是一种关系型数据库管理系统,InnoDB是MySQL的数据库 引擎之一。在InnoDB引擎中,数据页以B+树(B+Tree)进行组织管理, 通过指针确定数据页的逻辑顺序。B+树是一种树形数据结构数据页按照物 理顺序构成的数据空间称为表空间。同一个数据页在表空间中的物理顺序 与在B+树中的逻辑顺序无关。
InnoDB引擎的表空间碎片(以下简称:表空间碎片)是指随着InnoDB 引擎不断地运行,在表空间中产生的无法被利用的空闲空间。由于InnoDB 引擎对表空间碎片的管理有不足之处,并不能高效地利用这些碎片空间, 导致表空间碎片逐渐增多,磁盘空间浪费的现象逐渐加重。
目前已有的表空间碎片回收技术一般需要构建新的表,将原始表中的 数据插入新表中,导致占用大量的磁盘空间,对磁盘空间的压力较大。
发明内容
第一方面,本申请实施例提出一种表空间碎片回收方法,包括:
将数据页中的数据按照物理顺序向前迁移,以在表空间的末尾构造出空 闲数据页;所述表空间为多个数据页按照所述物理顺序构成的数据空间;
释放所述表空间末尾的空闲数据页。
本申请实施例首先将数据页中的数据按照物理顺序向前迁移,从而在表 空间的末尾构造出空闲数据页,之后释放这些空闲数据页。由于本申请实施 例在表空间碎片回收过程中不会创建新表,占用的总磁盘空间不会增加,因 此不会对磁盘空间带来新的压力。
在一种实施方式中,所述将数据页中的数据按照物理顺序向前迁移之前, 还包括:
合并不同数据页中的空间碎片,以在树形数据结构中构造出空闲数据页; 所述树形数据结构为多个数据页按照逻辑顺序构成的数据空间;
释放树形数据结构中的所述空闲数据页。
在上述实施例中,在数据迁移之前合并数据页中的空间碎片,能够减少 页内碎片空间,同时释放空闲的数据页,供数据迁移使用。
在一种实施方式中,所述合并不同数据页中的空间碎片,包括:将数据 页中的数据按照所述逻辑顺序向前迁移。
由于数据页在树形数据结构中是以逻辑顺序组织管理的,因此,本申请 实施例可以在合并数据页中的空间碎片时按照逻辑顺序将数据向前迁移,从 而减少页内碎片空间。
在一种实施方式中,所述将数据页中的数据按照物理顺序向前迁移,包 括:
将所述表空间中末尾位置的数据页设置为当前数据页,以将所述不同数 据页中的空间碎片集中到所述逻辑顺序的末尾;
在所述当前数据页中存在数据的情况下,查找所述表空间中的第一个空 闲数据页,在所述第一个空闲数据页位于所述当前数据页之前的情况下,将 所述当前数据页中的数据迁移至所述表空间中的第一个空闲数据页;
将所述当前数据页的前一个数据页设置为新的当前数据页,返回执行所 述在所述当前数据页中存在数据页的情况下,查找所述表空间中的第一个空 闲数据页的步骤。
本申请实施例采用遍历的方式,从后往前将数据页中的数据迁移至前面 的空闲数据页中,从而在表空间的末尾构建空闲数据页,以便从末尾释放空 闲数据页,因此避免了构建新的表,避免对磁盘空间造成额外的压力。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910873348.4/2.html,转载请声明来源钻瓜专利网。