CN111045870B - 一种保存与恢复元数据的方法、装置和介质 - Google Patents

一种保存与恢复元数据的方法、装置和介质 Download PDF

Info

Publication number
CN111045870B
CN111045870B CN201911379327.3A CN201911379327A CN111045870B CN 111045870 B CN111045870 B CN 111045870B CN 201911379327 A CN201911379327 A CN 201911379327A CN 111045870 B CN111045870 B CN 111045870B
Authority
CN
China
Prior art keywords
metadata
data block
address
backup
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911379327.3A
Other languages
English (en)
Other versions
CN111045870A (zh
Inventor
赵昌磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN201911379327.3A priority Critical patent/CN111045870B/zh
Publication of CN111045870A publication Critical patent/CN111045870A/zh
Application granted granted Critical
Publication of CN111045870B publication Critical patent/CN111045870B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques

Abstract

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

Description

一种保存与恢复元数据的方法、装置和介质
技术领域
本发明涉及数据管理技术领域,特别是涉及一种保存与恢复元数据的方法、装置和计算机可读存储介质。
背景技术
超级块(Superblock)作为固态硬盘(Solid State Disk,SSD)上电首先读取和下电最后保存的模块,内部保存了很多元数据。Superblock的数据正确性将决定SSD是否能正常工作,如何能快速安全的保存与恢复最新的Superblock,是每一个SSD厂商都要首先解决的问题。
传统方式中,采用纠删码技术保存和恢复元数据,主要是通过纠删码算法将元数据进行编码得到冗余,并将数据和冗余一并存储起来,以达到容错的目的。其基本思想是将n块原始的数据元素通过一定的计算,得到m块冗余元素,当其中任意的m块元素出错时,均可以通过对应的重构算法恢复出原来的n块数据。随着Superblock上元数据的变更,每次保存Superblock上的元数据时都需要重新进行计算,需要花费较多的时间,导致元数据的保存和恢复效率较低。
可见,如何提升元数据的保存和恢复效率,是本领域技术人员需要解决的问题。
发明内容
本发明实施例的目的是提供一种保存与恢复元数据的方法、装置和计算机可读存储介质,可以提升元数据的保存和恢复效率。
为解决上述技术问题,本发明实施例提供一种保存与恢复元数据的方法,包括:
在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份;
判断所述元数据备份成功的个数是否大于或等于预设阈值;
若否,则展示备份失败的提示信息;
若是,则在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。
可选地,所述在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份包括:
依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;
在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中。
可选地,每个物理存储地址有其对应的多个用于存储备份数据的数据块;
相应的,所述将元数据的备份数据并发写入各所述物理存储地址中包括:
将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;
对完成数据擦除操作的下一个数据块设置已擦写标记。
可选地,在所述将与所述当前数据块相邻的下一个数据块执行数据擦除操作之后还包括:
当系统上电重启时,判断系统是否属于异常下电;
当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。
可选地,所述在上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据包括:
根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,所述目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;
判断所述数据块首地址对应的数据块所记载的元数据版本号是否小于所述中间数据块地址对应的数据块所记载的元数据版本号;
若是,则将所述中间数据块地址作为所述数据块首地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
若否,则将所述中间数据块地址作为所述数据块尾地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
将各所述物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。
本发明实施例还提供了一种保存与恢复元数据的装置,包括备份单元、判断单元、展示单元和恢复单元;
所述备份单元,用于在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份;
所述判断单元,用于判断所述元数据备份成功的个数是否大于或等于预设阈值;若否,则触发所述展示单元;若是,则触发所述恢复单元;
所述展示单元,用于展示备份失败的提示信息;
所述恢复单元,用于在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。
可选地,所述备份单元包括设置子单元和存储子单元;
所述设置子单元,用于依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;
所述存储子单元,用于在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中。
可选地,每个物理存储地址有其对应的多个用于存储备份数据的数据块;
相应的,所述存储子单元具体用于将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;对完成数据擦除操作的下一个数据块设置已擦写标记。
可选地,还包括上电判断单元和擦除单元;
所述上电判断单元,用于当系统上电重启时,判断系统是否属于异常下电;当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。
可选地,所述恢复单元包括确定子单元、判断子单元、第一作为子单元、第二作为子单元和选取子单元;
所述确定子单元,用于根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,所述目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;
所述判断子单元,用于判断所述数据块首地址对应的数据块所记载的元数据版本号是否小于所述中间数据块地址对应的数据块所记载的元数据版本号;若是,则触发所述第一作为子单元;若否,则触发所述第二作为子单元;
所述第一作为子单元,用于将所述中间数据块地址作为所述数据块首地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
所述第二作为子单元,用于将所述中间数据块地址作为所述数据块尾地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
所述选取子单元,用于将各所述物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。
本发明实施例还提供了一种保存与恢复元数据的装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述任意一项所述保存与恢复元数据的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述保存与恢复元数据的方法的步骤。
由上述技术方案可以看出,在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份。元数据写入时的并发数表征了系统的并行处理能力,通过将元数据按照与并发数相同的数目进行备份,充分利用了系统的处理能力,实现多重备份以提升元数据的安全性。判断元数据备份成功的个数是否大于或等于预设阈值;当元数据备份成功的个数小于预设阈值时,则说明元数据备份失败,此时可以展示备份失败的提示信息,以便于用户重新对元数据进行备份保存。当元数据备份成功的个数大于或等于预设阈值时,则说明元数据备份成功,此时可以在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。通过按照元数据并发写入的数目,对元数据进行多重备份,充分利用了系统的处理能力,有效的提升了元数据的保存和恢复效率。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种保存与恢复元数据的方法的流程图;
图2为本发明实施例提供的一种保存与恢复元数据的装置的结构示意图;
图3为本发明实施例提供的一种保存与恢复元数据的装置的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
接下来,详细介绍本发明实施例所提供的一种保存与恢复元数据的方法。图1为本发明实施例提供的一种保存与恢复元数据的方法的流程图,该方法包括:
S101:在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份。
元数据写入时的并发数表征了系统的并行处理能力,在本发明实施例中,在将元数据写入闪存时,一并对元数据按照与并发数相同的数目进行备份,可以充分利用系统的处理能力,实现元数据的多重备份,从而提升元数据的安全性。
在对元数据备份时,可以预先设定存储备份数据的物理存储地址。具体地,可以依据元数据并发写入闪存时的并发数,设置与并发数相匹配的物理存储地址;在将元数据并发写入闪存时,将元数据的备份数据并发写入各物理存储地址中。
每个物理存储地址有其对应的多个用于存储备份数据的数据块。
为了避免数据存储产生混乱,在将元数据存储至数据块之前需要将数据块上原本的数据擦除,考虑到数据块上数据的擦除需要花费时间,在将各元数据的备份数据并发写入各物理存储地址的当前数据块时,可以一并将与当前数据块相邻的下一个数据块执行数据擦除操作;对完成数据擦除操作的下一个数据块设置已擦写标记。
在向当前数据块写入备份数据时,对下一个数据块执行数据擦除操作,以便于当前数据块存满时,可以直接向下一个数据块存入元数据,无需再等待下一个数据块执行数据擦除操作,有效的提升了元数据存储的效率。
S102:判断元数据备份成功的个数是否大于或等于预设阈值。
预设阈值的取值可以根据并发数进行设置,例如,可以将预设阈值设置为并发数取值的1/2。假设元数据并发写入闪存的并发数为4,则预设阈值可以设置为2。
当元数据备份成功的个数小于预设阈值时,则说明当前备份成功的元数据的个数较少,依赖于备份的元数据实现元数据恢复的可靠性不高,为了提升元数据恢复的可靠性,此时可以执行S103;当元数据备份成功的个数大于或等于预设阈值时,则说明可以依赖于备份的元数据,实现元数据的恢复,此时可以执行S104。
S103:展示备份失败的提示信息。
通过展示备份失败的提示信息,可以便于用户及时了解元数据的备份情况,从而对于备份失败的元数据人为进行备份处理,以实现元数据的多重备份。
S104:在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。
元数据的恢复是从多个备份数据中选取出版本号最新的元数据。
每个物理存储地址有其对应的备份数据,每个物理存储地址所对应的元数据恢复方式类型,以所有物理存储地址中的任意一个物理存储地址即目标物理存储地址为例,可以根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址。判断数据块首地址对应的数据块所记载的元数据版本号是否小于中间数据块地址对应的数据块所记载的元数据版本号。
当数据块首地址对应的数据块所记载的元数据版本号小于中间数据块地址对应的数据块所记载的元数据版本号时,则说明最新版本的元数据存储在中间数据块地址和数据块尾地址之间,此时可以将中间数据块地址作为数据块首地址,并返回根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号。
当数据块首地址对应的数据块所记载的元数据版本号大于或等于中间数据块地址对应的数据块所记载的元数据版本号时,则说明最新版本的元数据存储在数据块首地址和中间数据块地址之间,此时可以将中间数据块地址作为数据块尾地址,并返回根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号。
元数据版本号的取值越大,则说明元数据的版本越新。按照上述方式,可以确定出每个物理存储地址所对应的最新的版本号,此时可以将各物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。
由上述技术方案可以看出,在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份。元数据写入时的并发数表征了系统的并行处理能力,通过将元数据按照与并发数相同的数目进行备份,充分利用了系统的处理能力,实现多重备份以提升元数据的安全性。判断元数据备份成功的个数是否大于或等于预设阈值;当元数据备份成功的个数小于预设阈值时,则说明元数据备份失败,此时可以展示备份失败的提示信息,以便于用户重新对元数据进行备份保存。当元数据备份成功的个数大于或等于预设阈值时,则说明元数据备份成功,此时可以在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。通过按照元数据并发写入的数目,对元数据进行多重备份,充分利用了系统的处理能力,有效的提升了元数据的保存和恢复效率。
考虑到数据块长时间不被调用时,其存储性能的可靠性会下降。在正常状态下,为了提升系统的运行性能,会将服务器按照设定的时间周期进行上电重启,因此,在本发明实施例中,可以在每次系统正常上电重启时,对数据块执行数据擦除操作,以保证数据块的长期有效性。
具体地,在将与当前数据块相邻的下一个数据块执行数据擦除操作之后,当系统上电重启时,可以判断系统是否属于异常下电。当系统属于异常下电时,则说明在异常下电之前,在将备份数据写入当前数据块时,对当前数据块相邻的下一个数据块执行了数据擦除操作,为了避免短时间内重复执行数据擦除操作,因此,当系统属于异常下电时,无需执行数据擦除操作。当系统不属于异常下电时,则说明系统是按照正常的周期时间进行上电重启,此时可以对下一个数据块执行数据擦除操作,并完成数据擦除操作之后对下一个数据块设置已擦写标记。
通过将系统正常状态下的上电重启作为数据块执行数据擦除操作的触发条件,既可以解决数据块长时间不被调用其存储性能下降的问题,又不会频繁的对数据块执行数据擦除操作。
图2为本发明实施例提供的一种保存与恢复元数据的装置的结构示意图,包括备份单元21、判断单元22、展示单元23和恢复单元24;
备份单元21,用于在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份;
判断单元22,用于判断元数据备份成功的个数是否大于或等于预设阈值;若否,则触发展示单元23;若是,则触发恢复单元24;
展示单元23,用于展示备份失败的提示信息;
恢复单元24,用于在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。
可选地,备份单元包括设置子单元和存储子单元;
设置子单元,用于依据元数据并发写入闪存时的并发数,设置与并发数相匹配的物理存储地址;
存储子单元,用于在将元数据并发写入闪存时,将元数据的备份数据并发写入各物理存储地址中。
可选地,每个物理存储地址有其对应的多个用于存储备份数据的数据块;
相应的,存储子单元具体用于将各元数据的备份数据并发写入各物理存储地址的当前数据块中,并将与当前数据块相邻的下一个数据块执行数据擦除操作;对完成数据擦除操作的下一个数据块设置已擦写标记。
可选地,还包括上电判断单元和擦除单元;
上电判断单元,用于当系统上电重启时,判断系统是否属于异常下电;当系统不属于异常下电时,则对下一个数据块执行数据擦除操作,并完成数据擦除操作之后对下一个数据块设置已擦写标记。
可选地,恢复单元包括确定子单元、判断子单元、第一作为子单元、第二作为子单元和选取子单元;
确定子单元,用于根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;
判断子单元,用于判断数据块首地址对应的数据块所记载的元数据版本号是否小于中间数据块地址对应的数据块所记载的元数据版本号;若是,则触发第一作为子单元;若否,则触发第二作为子单元;
第一作为子单元,用于将中间数据块地址作为数据块首地址,并返回根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
第二作为子单元,用于将中间数据块地址作为数据块尾地址,并返回根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
选取子单元,用于将各物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。
图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,在将元数据并发写入闪存时,按照与并发数相匹配的数目对元数据进行备份。元数据写入时的并发数表征了系统的并行处理能力,通过将元数据按照与并发数相同的数目进行备份,充分利用了系统的处理能力,实现多重备份以提升元数据的安全性。判断元数据备份成功的个数是否大于或等于预设阈值;当元数据备份成功的个数小于预设阈值时,则说明元数据备份失败,此时可以展示备份失败的提示信息,以便于用户重新对元数据进行备份保存。当元数据备份成功的个数大于或等于预设阈值时,则说明元数据备份成功,此时可以在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据。通过按照元数据并发写入的数目,对元数据进行多重备份,充分利用了系统的处理能力,有效的提升了元数据的保存和恢复效率。
图3为本发明实施例提供的一种保存与恢复元数据的装置30的硬件结构示意图,包括:
存储器31,用于存储计算机程序;
处理器32,用于执行计算机程序以实现如权上述任意一项保存与恢复元数据的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项保存与恢复元数据的方法的步骤。
以上对本发明实施例所提供的一种保存与恢复元数据的方法、装置和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

Claims (5)

1.一种保存与恢复元数据的方法,其特征在于,包括:
在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份包括在将元数据写入闪存时,一并对元数据按照与并发数相同的数目进行备份;
判断所述元数据备份成功的个数是否大于或等于预设阈值;
若否,则展示备份失败的提示信息;
若是,则在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据;
所述在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份包括:
依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;
在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中;
每个物理存储地址有其对应的多个用于存储备份数据的数据块;
相应的,所述将元数据的备份数据并发写入各所述物理存储地址中包括:
将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;
对完成数据擦除操作的下一个数据块设置已擦写标记;
在所述将与所述当前数据块相邻的下一个数据块执行数据擦除操作之后还包括:
当系统上电重启时,判断系统是否属于异常下电;
当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。
2.根据权利要求1所述的方法,其特征在于,在上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据包括:
根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址;其中,所述目标物理存储地址为所有物理存储地址中的任意一个物理存储地址;
判断所述数据块首地址对应的数据块所记载的元数据版本号是否小于所述中间数据块地址对应的数据块所记载的元数据版本号;
若是,则将所述中间数据块地址作为所述数据块首地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
若否,则将所述中间数据块地址作为所述数据块尾地址,并返回所述根据目标物理存储地址的数据块首地址和数据块尾地址,确定出中间数据块地址的步骤,直至遍历出最新的版本号;
将各所述物理存储地址所对应的最新的版本号中取值最大的版本号所对应的元数据作为恢复后的元数据。
3.一种保存与恢复元数据的装置,其特征在于,包括备份单元、判断单元、展示单元和恢复单元;
所述备份单元,用于在将元数据并发写入闪存时,按照与并发数相匹配的数目对所述元数据进行备份包括在将元数据写入闪存时,一并对元数据按照与并发数相同的数目进行备份;
所述判断单元,用于判断所述元数据备份成功的个数是否大于或等于预设阈值;若否,则触发所述展示单元;若是,则触发所述恢复单元;
所述展示单元,用于展示备份失败的提示信息;
所述恢复单元,用于在系统上电恢复时,从各备份数据中选取版本号最新的元数据作为恢复后的元数据;
所述备份单元包括设置子单元和存储子单元;
所述设置子单元,用于依据元数据并发写入闪存时的并发数,设置与所述并发数相匹配的物理存储地址;
所述存储子单元,用于在将元数据并发写入闪存时,将元数据的备份数据并发写入各所述物理存储地址中;
每个物理存储地址有其对应的多个用于存储备份数据的数据块;
相应的,所述存储子单元具体用于将各元数据的备份数据并发写入各所述物理存储地址的当前数据块中,并将与所述当前数据块相邻的下一个数据块执行数据擦除操作;对完成数据擦除操作的下一个数据块设置已擦写标记;
还包括上电判断单元和擦除单元;所述上电判断单元,用于当系统上电重启时,判断系统是否属于异常下电;当系统不属于异常下电时,则对所述下一个数据块执行数据擦除操作,并完成数据擦除操作之后对所述下一个数据块设置已擦写标记。
4.一种保存与恢复元数据的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至2任意一项所述保存与恢复元数据的方法的步骤。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至2任一项所述保存与恢复元数据的方法的步骤。
CN201911379327.3A 2019-12-27 2019-12-27 一种保存与恢复元数据的方法、装置和介质 Active CN111045870B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911379327.3A CN111045870B (zh) 2019-12-27 2019-12-27 一种保存与恢复元数据的方法、装置和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911379327.3A CN111045870B (zh) 2019-12-27 2019-12-27 一种保存与恢复元数据的方法、装置和介质

Publications (2)

Publication Number Publication Date
CN111045870A CN111045870A (zh) 2020-04-21
CN111045870B true CN111045870B (zh) 2022-06-10

Family

ID=70239371

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911379327.3A Active CN111045870B (zh) 2019-12-27 2019-12-27 一种保存与恢复元数据的方法、装置和介质

Country Status (1)

Country Link
CN (1) CN111045870B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112684979B (zh) * 2020-12-24 2024-03-01 北京浪潮数据技术有限公司 一种固态硬盘的使用方法、系统、设备及存储介质
CN113419897B (zh) * 2021-01-19 2023-12-22 阿里巴巴集团控股有限公司 一种文件处理方法、装置、电子设备及其存储介质
CN115793995B (zh) * 2023-02-10 2023-04-07 力高(山东)新能源技术股份有限公司 一种面向传统MCU中仅有Pflash的数据存储方法
CN116863986A (zh) * 2023-09-05 2023-10-10 合肥康芯威存储技术有限公司 一种用于对存储设备进行分类的数据检测方法、装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298425B1 (en) * 1999-01-12 2001-10-02 Compaq Computer Corp. Computer disk management system using doublet A-B logging
CN101751415A (zh) * 2008-12-09 2010-06-23 中国移动通信集团公司 元数据服务系统、元数据同步方法与写服务器更新方法
CN104572357A (zh) * 2014-12-30 2015-04-29 清华大学 一种用于hdfs系统的备份和恢复方法
CN106708657A (zh) * 2015-08-03 2017-05-24 中兴通讯股份有限公司 一种元数据管理方法及装置、分布式文件系统
CN109101437A (zh) * 2018-07-20 2018-12-28 浪潮电子信息产业股份有限公司 一种数据存储方法与终端
CN109284069A (zh) * 2018-08-23 2019-01-29 郑州云海信息技术有限公司 一种存放备份数据的分布式存储系统及方法
WO2019052213A1 (zh) * 2017-09-14 2019-03-21 华为技术有限公司 一种数据恢复方法及装置
CN109783012A (zh) * 2017-11-15 2019-05-21 忆锐公司 基于闪存的储存器及其控制器
CN109918234A (zh) * 2019-03-06 2019-06-21 苏州浪潮智能科技有限公司 一种基于ssd的元数据恢复方法、装置、设备及介质
CN109947594A (zh) * 2019-02-27 2019-06-28 武汉天喻信息产业股份有限公司 一种数据备份方法及装置、数据恢复方法及装置
CN110008030A (zh) * 2019-04-16 2019-07-12 苏州浪潮智能科技有限公司 一种元数据访问的方法、系统及设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104332B2 (en) * 2013-04-16 2015-08-11 International Business Machines Corporation Managing metadata and data for a logical volume in a distributed and declustered system
US9632715B2 (en) * 2015-08-10 2017-04-25 International Business Machines Corporation Back-up and restoration of data between volatile and flash memory

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298425B1 (en) * 1999-01-12 2001-10-02 Compaq Computer Corp. Computer disk management system using doublet A-B logging
CN101751415A (zh) * 2008-12-09 2010-06-23 中国移动通信集团公司 元数据服务系统、元数据同步方法与写服务器更新方法
CN104572357A (zh) * 2014-12-30 2015-04-29 清华大学 一种用于hdfs系统的备份和恢复方法
CN106708657A (zh) * 2015-08-03 2017-05-24 中兴通讯股份有限公司 一种元数据管理方法及装置、分布式文件系统
WO2019052213A1 (zh) * 2017-09-14 2019-03-21 华为技术有限公司 一种数据恢复方法及装置
CN109783012A (zh) * 2017-11-15 2019-05-21 忆锐公司 基于闪存的储存器及其控制器
CN109101437A (zh) * 2018-07-20 2018-12-28 浪潮电子信息产业股份有限公司 一种数据存储方法与终端
CN109284069A (zh) * 2018-08-23 2019-01-29 郑州云海信息技术有限公司 一种存放备份数据的分布式存储系统及方法
CN109947594A (zh) * 2019-02-27 2019-06-28 武汉天喻信息产业股份有限公司 一种数据备份方法及装置、数据恢复方法及装置
CN109918234A (zh) * 2019-03-06 2019-06-21 苏州浪潮智能科技有限公司 一种基于ssd的元数据恢复方法、装置、设备及介质
CN110008030A (zh) * 2019-04-16 2019-07-12 苏州浪潮智能科技有限公司 一种元数据访问的方法、系统及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种基于平衡二叉树的CDP数据备份及重构方法;李毅飞等;《数据通信》;20190428(第02期);全文 *
去重环境下基于元数据分类的贪婪预取型数据恢复;杨儒等;《小型微型计算机系统》;20170531(第05期);全文 *

Also Published As

Publication number Publication date
CN111045870A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111045870B (zh) 一种保存与恢复元数据的方法、装置和介质
US7911840B2 (en) Logged-based flash memory system and logged-based method for recovering a flash memory system
CN109508148B (zh) 一种元数据重建方法、装置和计算机可读存储介质
TWI490876B (zh) 系統啟動引導處理方法及裝置
CN107818269B (zh) 一种基于Flash的文件保存方法及系统
JP5669823B2 (ja) チェンジトラッキングを用いたシステムリカバリ方法
US10643668B1 (en) Power loss data block marking
JP2008198310A (ja) ビットエラーの修復方法および情報処理装置
CN102999564B (zh) 写入数据的方法、装置和设备
CN113626256B (zh) 一种虚拟机磁盘数据备份方法、装置、终端及存储介质
CN111046024B (zh) 一种共享存储数据库的数据处理方法、装置、设备及介质
KR102031606B1 (ko) 버저닝된 메모리 구현
CN108874312B (zh) 数据存储方法以及存储设备
CN110618892A (zh) 一种固态硬盘的bug定位方法、装置、电子设备及介质
CN104598335A (zh) Nv参数的备份恢复方法和装置
CN101344868A (zh) 数据备份和获取的方法和装置
CN103531234B (zh) 一种NandFlash存储器写操作过程掉电防护方法
CN107329699B (zh) 一种纠删重写方法及系统
KR101548452B1 (ko) 비휘발성 메모리 기반의 전자 장치의 메타 데이터 복원 방법 및 장치
CN115599607B (zh) 一种raid阵列的数据恢复方法及相关装置
CN108874318B (zh) 固态硬盘的数据恢复方法以及固态硬盘
CN109254929B (zh) 实现数据被可靠写入芯片的方法
CN114721879B (zh) Soc芯片、针对soc芯片的数据备份方法及电子设备
CN110729014A (zh) Ssd存储擦除计数表备份的方法、装置、计算机设备及存储介质
CN115562593A (zh) 一种异常raid成员盘处理方法、装置及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant