一种保存与恢复元数据的方法、装置和介质制造方法及图纸

技术编号:23890204 阅读:42 留言:0更新日期:2020-04-22 06:09
本发明专利技术实施例公开了一种保存与恢复元数据的方法、装置和计算机可读存储介质,在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份。元数据写入时的并发数表征了系统的并行处理能力,通过将元数据按照与并发数相同的数目进行备份,充分利用了系统的处理能力,实现多重备份以提升元数据的安全性。判断元数据备份成功的个数是否大于或等于预设阈值;若否,则展示备份失败的提示信息,以便于用户重新对元数据进行备份保存。若是,则在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。按照元数据并发写入的数目,对元数据进行多重备份,充分利用了系统的处理能力,有效的提升了元数据的保存和恢复效率。

【技术实现步骤摘要】
一种保存与恢复元数据的方法、装置和介质
本专利技术涉及数据管理
,特别是涉及一种保存与恢复元数据的方法、装置和计算机可读存储介质。
技术介绍
超级块(Superblock)作为固态硬盘(SolidStateDisk,SSD)上电首先读取和下电最后保存的模块,内部保存了很多元数据。Superblock的数据正确性将决定SSD是否能正常工作,如何能快速安全的保存与恢复最新的Superblock,是每一个SSD厂商都要首先解决的问题。传统方式中,采用纠删码技术保存和恢复元数据,主要是通过纠删码算法将元数据进行编码得到冗余,并将数据和冗余一并存储起来,以达到容错的目的。其基本思想是将n块原始的数据元素通过一定的计算,得到m块冗余元素,当其中任意的m块元素出错时,均可以通过对应的重构算法恢复出原来的n块数据。随着Superblock上元数据的变更,每次保存Superblock上的元数据时都需要重新进行计算,需要花费较多的时间,导致元数据的保存和恢复效率较低。可见,如何提升元数据的保存和恢复效率,是本领域技术人员需要解决的问题。
技术实现思路
本专利技术实施例的目的是提供一种保存与恢复元数据的方法、装置和计算机可读存储介质,可以提升元数据的保存和恢复效率。为解决上述技术问题,本专利技术实施例提供一种保存与恢复元数据的方法,包括:在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份;判断所述元数据备份成功的个数是否大于或等于预设阈值;若否,则展示备份失败的提示信息;若是,则在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。可选地,所述在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份包括:依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中。可选地,每个物理存储地址有其对应的多个用于存储备份数据的数据块;相应的,所述将元数据的备份数据并发写入各所述物理存储地址中包括:将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;对完成数据擦除操作的下一个数据块设置已擦写标记。可选地,在所述将与所述当前数据块相邻的下一个数据块执行数据擦除操作之后还包括:当系统上电重启时,判断系统是否属于异常下电;当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。可选地,所述在上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据包括:根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,所述目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;判断所述数据块首地址对应的数据块所记载的元数据版本号是否小于所述中间数据块地址对应的数据块所记载的元数据版本号;若是,则将所述中间数据块地址作为所述数据块首地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;若否,则将所述中间数据块地址作为所述数据块尾地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;将各所述物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。本专利技术实施例还提供了一种保存与恢复元数据的装置,包括备份单元、判断单元、展示单元和恢复单元;所述备份单元,用于在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份;所述判断单元,用于判断所述元数据备份成功的个数是否大于或等于预设阈值;若否,则触发所述展示单元;若是,则触发所述恢复单元;所述展示单元,用于展示备份失败的提示信息;所述恢复单元,用于在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。可选地,所述备份单元包括设置子单元和存储子单元;所述设置子单元,用于依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;所述存储子单元,用于在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中。可选地,每个物理存储地址有其对应的多个用于存储备份数据的数据块;相应的,所述存储子单元具体用于将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;对完成数据擦除操作的下一个数据块设置已擦写标记。可选地,还包括上电判断单元和擦除单元;所述上电判断单元,用于当系统上电重启时,判断系统是否属于异常下电;当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。可选地,所述恢复单元包括确定子单元、判断子单元、第一作为子单元、第二作为子单元和选取子单元;所述确定子单元,用于根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,所述目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;所述判断子单元,用于判断所述数据块首地址对应的数据块所记载的元数据版本号是否小于所述中间数据块地址对应的数据块所记载的元数据版本号;若是,则触发所述第一作为子单元;若否,则触发所述第二作为子单元;所述第一作为子单元,用于将所述中间数据块地址作为所述数据块首地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;所述第二作为子单元,用于将所述中间数据块地址作为所述数据块尾地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;所述选取子单元,用于将各所述物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。本专利技术实施例还提供了一种保存与恢复元数据的装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现如上述任意一项所述保存与恢复元数据的方法的步骤。本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述保存与恢复元数据的方法的步骤。由上述技术方案可以看出,在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份。元数据写入时的并发数表征了系统的并行处理能力,通过将元数据按照与并发数相同的数目进行备份,充分利用了系统的处理能力,实现多重备份以提升元数据的安全性。判断元数据备份成功的个数是否大于或等于本文档来自技高网...

【技术保护点】
1.一种保存与恢复元数据的方法,其特征在于,包括:/n在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份;/n判断所述元数据备份成功的个数是否大于或等于预设阈值;/n若否,则展示备份失败的提示信息;/n若是,则在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。/n

【技术特征摘要】
1.一种保存与恢复元数据的方法,其特征在于,包括:
在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份;
判断所述元数据备份成功的个数是否大于或等于预设阈值;
若否,则展示备份失败的提示信息;
若是,则在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。


2.根据权利要求1所述的方法,其特征在于,所述在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份包括:
依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;
在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中。


3.根据权利要求2所述的方法,其特征在于,每个物理存储地址有其对应的多个用于存储备份数据的数据块;
相应的,所述将元数据的备份数据并发写入各所述物理存储地址中包括:
将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;
对完成数据擦除操作的下一个数据块设置已擦写标记。


4.根据权利要求3所述的方法,其特征在于,在所述将与所述当前数据块相邻的下一个数据块执行数据擦除操作之后还包括:
当系统上电重启时,判断系统是否属于异常下电;
当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。


5.根据权利要求2所述的方法,其特征在于,所述在上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据包括:
根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,所述目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;
判断所述数据块首地址对应的数据块所记载的元数据版本号是否小于所述中间数据块地址对应的数据块所记载的元数据版本号;
若是,则将所述中间数据块地址作为所述数据块首地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确...

【专利技术属性】
技术研发人员:赵昌磊
申请(专利权)人:北京浪潮数据技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1