[发明专利]一种构建丢失的FTL table的方法及装置有效
申请号: | 201710595638.8 | 申请日: | 2017-07-20 |
公开(公告)号: | CN107301133B | 公开(公告)日: | 2021-01-12 |
发明(设计)人: | 秦文政 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/06 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 构建 丢失 ftl table 方法 装置 | ||
本发明公开了一种构建丢失的FTL table的方法,通过在FTL table丢失之前存储PPA对应的LBA的反向信息,在FTL table丢失时,通过读取反向信息中PPA对应的LBA,即可得到LBA到PPA的映射关系,从而实现FTL table的重新构建,极大的缩短了FTL table重构的时间,也能够极大的缩短SSD上电时,从而提高SSD盘的使用性能以及服务器对元数据的管理性能。本发明还公开了一种构建丢失的FTL table装置,具有上述有益效果。
技术领域
本发明涉及固态硬盘元数据管理领域,特别是涉及一种构建丢失的FTL table的方法及装置。
背景技术
FTL table是SSD盘中最重要的元数据信息之一,记录了LBA到PPA的映射关系。FTLtable通常是在服务器关机,SSD盘下电流程中写入flash,在服务器重启,SSD盘上电时读取FTL table,而上电时间是SSD盘的一个重要指标之一。
但是当遇到服务器异常掉电或者突发性的故障时,导致FTL table未能写入flash,或者服务器重启,SSD上电时读取FTL table出错并无法恢复时,就需要重新构建FTLtable。
SSD盘做深度重建的传统做法是通过读取每个PPA的数据利用OOB中记录的LBA来恢复重建FTL table,该方法流程虽然简单清晰,但是耗费的时间非常的长,这对SSD盘的性能产生了很大的负面影响。
发明内容
本发明的目的是提供一种构建丢失的FTL table的方法,解决了服务器启动时,SSD读取FTL table失败时,重新构建FTL table导致SSD盘上电时间过长的问题,缩短了重构FTL table所耗费的时间,提高了SSD盘的性能,本发明还提供了一种构建丢失的FTLtable的装置。
为解决上述技术问题,本发明提供一种构建丢失的FTL table的方法,该方法包括:
读取在block中的预先存储的反向信息,其中,所述反向信息为根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息;
根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息,如果是,则在所述反向信息中查找所述PPA对应的LBA,确定所述LBA到所述PPA的映射关系;根据所述映射关系构建FTL table。
其中,所述标识信息为根据各个PPA在所述block中的位置顺序,确定的各个PPA位置的序列号信息;
所述根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息包括:
按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息。
其中,判断所述PPA是否存在所述PPA对应的所述反向信息包括:
根据所述标识信息,判断在所述block中是否存在所述PPA对应的所述反向信息,其中,所述反向信息在所述block中的存储位置为根据各个所述PPA的位置顺序,选取存储所述反向信息的位置。
其中,所述反向信息为反向表,且所述反向表的大小不超过一个sector存储空间的大小。
其中,根据所述PPA的标识信息,判断在所述block中是否存在存储所述PPA对应的LBA的所述反向信息包括:
如果在所述block中不存在所述PPA对应的所述反向信息,则在所述PPA中读取所述PPA对应的LBA。
其中,在根据所述映射关系构建FTL table之后还包括:
判断是否各个所述block中的所述反向信息均读取完成,如果否,则再次执行读取在block中的预先存储的反向信息的操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710595638.8/2.html,转载请声明来源钻瓜专利网。