[发明专利]非易失性内存数据库管理系统恢复方法、装置和电子设备有效
申请号: | 202110684054.4 | 申请日: | 2021-06-21 |
公开(公告)号: | CN113515501B | 公开(公告)日: | 2022-10-25 |
发明(设计)人: | 武永卫;陈康;姜进磊;蔡诗宇 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F11/14 |
代理公司: | 北京新知远方知识产权代理事务所(普通合伙) 11397 | 代理人: | 马军芳;张艳 |
地址: | 100089*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 非易失性 内存 数据库 管理 系统 恢复 方法 装置 电子设备 | ||
本申请实施例中提供了一种非易失性内存数据库管理系统恢复方法、装置和电子设备,当非易失性内存数据库管理系统处于故障状态时,对非易失性内存分配器进行恢复,并在非易失性内存分配器中查找持久化数据结构的根指针;根据根指针获取树状结构的持久化数据结构所占用的空间信息,根据占用的空间信息对管理系统的元数据进行更新;在元数据更新完成后,对非易失性内存数据库管理系统中的不存在的记录数据进行回收,以将非易失性内存数据库管理系统从故障状态恢复至工作状态。由于持久化数据结构为树状结构,因此只要找到根节点就能找到所有的持久化数据结构,并以此进行系统的故障恢复,无需通过日志文件对系统进行恢复。
技术领域
本申请涉及数据存储技术,具体地,涉及一种非易失性内存数据库管理系统恢复方法、装置和电子设备。
背景技术
数据库管理系统是管理、存储和分析数据的计算机软件。用户可以通过数据库管理系统的接口读取、更新和分析数据。事务是用户执行操作的最小执行单元,一个事务可以包含多个访问或更新操作。数据库管理系统必须支持事务的原子性、一致性、隔离性以及持久性。事务的原子性指的是一个事务是不可分割的,对于数据的修改要么都存在,要么都不存在。事务的持久性指的是一个提交事务对数据的修改不会因为故障而丢失。
现有的数据库管理系统通常采用内存-非易失介质(如硬盘和固态硬盘)的双层存储架构。内存的访问延迟低,但是内存上的数据会因为断电而丢失,即数据是易失的,非易失性介质的访问延迟高,但是容量大,并且数据不会因为断电丢失,即数据是非易失的。为了防止数据丢失,这种双层存储架构的数据库管理系统需要通过日志文件记录事务的修改,并且定期地将日志文件持久化到非易失性介质上,然而日志文件会增大事务的开销,并且会占用一定的存储空间。
因此,提出了一种基于非易失性内存的单层架构的数据库管理系统。在非易失性内存的数据库管理系统中,事务可以直接修改非易失性内存上的数据,所以事务对数据的更新不会因为断电而丢失。因此,基于非易失性内存的单层架构的数据库管理系统无需使用日志文件对数据进行管理,降低了日志文件的开销,提高数据库性能并且节约了存储空间。
在数据库出现故障导致事务运行中断后,为了保证数据库中的事务的原子性,需要对数据库进行恢复,然而由于此种非易失性内存数据库管理系统没有日志文件,因此,在数据库发生故障后对数据库的恢复具有一定的难度。
发明内容
本申请实施例中提供了一种非易失性内存数据库管理系统恢复方法、装置和电子设备,用于解决目前的非易失性内存数据由于没有日志文件导致发生故障后难以恢复的问题。
根据本申请实施例的第一个方面,提供了一种非易失性内存数据库管理系统恢复方法,非易失性内存数据库管理系统包括非易失性内存分配器、记录数据和持久化数据结构,所述持久化数据结构为树状结构,所述方法包括:
判断所述非易失性内存数据库管理系统是否处于故障状态;
若是,则对所述非易失性内存分配器进行恢复,并在所述非易失性内存分配器中查找所述持久化数据结构的根指针;
根据所述根指针获取所述非易失性内存数据库管理系统的持久化数据结构占用的空间信息,根据占用的空间信息对所述非易失性内存数据库管理系统的元数据进行更新,其中,所述元数据用于记录所述非易失性内存数据库管理系统的空间分配信息;
在所述元数据更新完成后,对所述非易失性内存数据库管理系统中的不存在的记录数据进行回收,以将所述非易失性内存数据库管理系统从故障状态恢复至工作状态,其中,所述记录数据不存在是指所述记录数据未被提交事务插入或所述记录数据已经被删除。
根据本申请实施例的第二个方面,提供了一种非易失性内存数据库管理系统恢复装置,所述非易失性内存数据库管理系统包括非易失性内存分配器、记录数据和持久化数据结构,所述持久化数据结构是指相互之间存在逻辑结构关系和物理结构关系的持久化的数据元素的集合且所述持久化数据结构为树状结构,所述装置包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110684054.4/2.html,转载请声明来源钻瓜专利网。