CN107301133A - 一种构建丢失的FTL table的方法及装置 - Google Patents
一种构建丢失的FTL table的方法及装置 Download PDFInfo
- Publication number
- CN107301133A CN107301133A CN201710595638.8A CN201710595638A CN107301133A CN 107301133 A CN107301133 A CN 107301133A CN 201710595638 A CN201710595638 A CN 201710595638A CN 107301133 A CN107301133 A CN 107301133A
- Authority
- CN
- China
- Prior art keywords
- ppa
- reverse
- information
- lba
- block
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000013507 mapping Methods 0.000 claims abstract description 29
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000013523 data management Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000001314 paroxysmal effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种构建丢失的FTL table的方法,通过在FTL table丢失之前存储PPA对应的LBA的反向信息,在FTL table丢失时,通过读取反向信息中PPA对应的LBA,即可得到LBA到PPA的映射关系,从而实现FTL table的重新构建,极大的缩短了FTL table重构的时间,也能够极大的缩短SSD上电时,从而提高SSD盘的使用性能以及服务器对元数据的管理性能。本发明还公开了一种构建丢失的FTL table装置,具有上述有益效果。
Description
技术领域
本发明涉及固态硬盘元数据管理领域,特别是涉及一种构建丢失的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中的预先存储的反向信息的操作。
本发明还提供了一种构建丢失的FTL table的装置,包括:
读取模块,用于读取在block中的预先存储的反向信息,其中,所述反向信息为根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息;
判断查找模块,用于根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息,如果是,则在所述反向信息中查找所述PPA对应的LBA,确定所述LBA到所述PPA的映射关系;
重建模块,用于根据所述映射关系构建FTL table。
其中,所述判断查询模块包括:
记录单元,用于按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息;按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息;
查找单元,用于根据在所述block中各个所述PPA的位置顺序,查找所述PPA在所述反向信息中对应的LBA。
其中,所述判断查询模块包括:
判断单元,用于根据所述标识信息,判断在所述block中是否存在所述PPA对应的所述反向信息,其中,所述反向信息在所述block中的存储位置为根据各个所述PPA的位置顺序,选取存储所述反向信息的位置。
其中,所述判断单元用于如果在所述block中不存在所述PPA对应的所述反向信息,则在所述PPA中读取所述PPA对应的LBA。
本发明所提供的一种深度构建丢失的FTL table的方法,通过在block中的PPA写入LBA时,建立一个记录各个PPA对应的LBA的反向信息,在服务器突然断电或故障导致FTLtable丢失时,可以通过查询反向信息即可获得LBA到PPA的映射关系,从而重新构建FTLtable,相对于现有的逐个读取PPA,利用OOB中记录的LBA,获取LBA到PPA的映射关系,本发明只需读取反向信息即可获得各个PPA对应的LBA,极大的减少了获取LBA到PPA的映射关系所耗费的时间,从而缩短构建FTL table的时间,在SSD盘上电时,读取FTL table失败时,能够较为迅速的重新构建FTL table,从而缩短SSD盘的上电时间,提高SSD盘的使用性能,进而提高保证服务器的对元数据的管理性能。
本发明还提供了一种深度构建丢失的FTL table的装置,具有上述有益效果。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的构建丢失的FTL table的一种具体实施方式流程图;
图2为本发明提供的构建丢失的FTL table的另一种具体实施方式流程图;
图3为本发明实施例提供的构建丢失的FTL table的装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的构建丢失的FTL table的一种具体实施方式流程图如图1所示,该方法可以包括:
步骤S101:读取在block中的预先存储的反向信息。
具体的,该反向信息可以是在PPA中写入LBA的同时,根据各个PPA的标识信息记录的各个PPA对应的LBA的反向信息。但是,反向信息不一定必须是在PPA中写入LBA的同时,立即记录并存储反向信息,只要在重新构建FTL table之前记录即可,但是为了避免服务器突然断电或发生其他故障,导致记录并存储反向信息失败,从而无法根据反向信息构建FTLtable,比较优选的方案是在PPA中写入LBA时,就及时的记录并存储对应的反向信息。
步骤S102:根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息。
因为反向信息是根据PPA的标识信息来记录PPA对应的LBA,所以该标识信息必然和记录有PPA对应的LBA的反向信息存在必然的联系,根据这样的联系就能够查找并确定每个PPA是否存在对应的反向信息。
步骤S103:如果所述PPA存在对应的所述反向信息,则在所述反向信息中查找所述PPA对应的LBA,确定所述LBA到所述PPA的映射关系。
步骤S104:根据所述映射关系构建FTL table。
需要说明的是,FTL table记录的是LBA到PPA的映射关系,是一种根据LBA查找对应的PPA的信息,它的作用类似于宾馆前台的登记手册,登记着房客入住的在哪个房间,当要去宾馆找人时,只需要告知房客姓名即可通过查询登记手册找到房客入住的房间。
FTL table的保存通常是在SSD盘下电流程中进行的,但是一旦遇到服务器异常掉电,未能将FTL table写入Flash,或者是FTL table出错并无法恢复,在SSD盘上电过程中,将无法直接读取FTL table,只能重新构建FTL table。
现有的重新构建FTL table的方式是逐个读取PPA中的LBA,确定LBA到PPA的映射关系,类似于逐个去敲每个房间的门,最终确定每个房间内的入住的房客,这个方式流程虽然简单,但是由于整个FTL table中涉及到PPA数量非常多,逐个读取PPA的过程十分耗费时间,而SSD的上电时间直接影响着SSD盘的性能,甚至某些具体的应用场景中SSD盘对上电时间有严格的要求,例如,SSD做启动盘,如果SSD上电时间过长将直接影响服务器的启动。
为解决上述问题,本发明中,在PPA中写入LBA的同时记录并存储有反向信息,而反向信息之所以称之为反向信息是因为记录的是PPA对应的LBA的信息,是一种根据PPA查找对应的PPA的信息。
在记录LBA和PPA之间的对应关系时,之所以没有直接记录LBA到PPA的映射关系,是因为LBA写入PPA时,是按照PPA在block中的位置逐个依次写入,直接记录PPA对应的LBA更为简单方便,便于数据管理,但这并不是实现本发明的目的的唯一实施方式,直接在PPA写入LBA时记录LBA到PPA的映射关系,也可以实现本发明的目的,总之只要能够记录LBA和PPA之间的联系,并能够通过这种联系迅速的确定LBA到PPA的映射关系即可,以便根据映射关系快速重新构建FTL table,而不需要逐个读取PPA中的LBA来建立FTL table,从而缩短FTL table重建所耗费的时间。
基于上述实施例,由于LBA是按照block中PPA的位置顺序依次写入的,为了简化流程,反向信息记录PPA对应的LBA也可以根据PPA在block中的位置顺序进行记录。
本发明的另一具体实施例中,可以包括:
所述标识信息为根据各个PPA在所述block中的位置顺序,确定的各个PPA位置的序列号信息;
所述根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息可以进一步改进,具体为按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息。
具体的可以是,例如block中第一个PPA对应的LBA存储在反向信息中第一个存储空间,第二个PPA对应的LBA存储在反向信息的第二个存储空间,以此类推,各个PPA在block中的位置顺序,即为对应的LBA在反向信息中的存储空间的顺序。当然这只是实现本发明的一种具体的实施方式,并不是本发明的必要技术特征,例如,还可以是block中序列号为第四、五、六个的PPA,对应的LBA依次存储在反向信息中第一、第二、第三个存储空间内,也能够实现本发明的技术方案,与此想类似的实施方式,在此不一一赘述。
基于上述实施例,考虑到服务器突然断电,而存在部分PPA对应的LBA未能及时存储,在查找PPA对应的LBA之前需要确定block中是否存在PPA对应的反向信息,本发明的另一具体题实施例中,可以包括:
根据所述标识信息,判断在所述block中是否存在所述PPA对应的所述反向信息,其中,所述反向信息在所述block中的存储位置为根据各个所述PPA的位置顺序,选取存储所述反向信息的位置。
具体的,每个block中有多份反向信息,在存储的反向信息时,一般按照PPA在block中的位置顺序存储,例如第一份反向信息是记录了序列号为1、2、3的PPA对应的LBA,第二份反向信息是记录了序列号为4、5、6的PPA对应的LBA,那么第一份反向信息存储在第一存储空间,而第二份反向表存储在第二存储空间,根据这样的存储顺序之间的联系,很容易查找到PPA对应的反向信息。
另外,反向信息存储的位置还和每份反向信息所需要占用的存储空间有关,例如序列号为1至6的序列号的PPA对应的LBA记录在第一份反向信息中,而第二份反向信息记录的是序列号为7、8、9的PPA对应LBA,但是存储第一份反向信息需要第一存储空间和第二存储空间,则第二份反向信息的位置只能是在第三存储空间了。当然,这仅仅是本发明的一种具体存储方式,也可以直接将反向信息和PPA选取相应的标识,根据标识查找PPA对应的反向信息,也能实现本发明的技术方案,所以这并不是本发明的必要技术特征。
基于上述实施例,本发明另一具体实施例中,可以包括:
所述反向信息为反向表,且所述反向表的大小不超过一个sector存储空间的大小。
需要说明的是,反向表只是存储PPA对应的LBA的一种具体的形式,也可以是类似的其他形式,都不影响本发明的实现。
另外,反向表最终存储在flash中,而SSD对flash最小的管理单位是一个sector,如果反向表的大小远小于一个sector,而该sector中多余的空间不能再存储其他数据,就会造成空间的浪费,如果反向表的大小是sector的整数倍,反向表需要记录的LBA就越多,而反向表只有在记录完需要记录的PPA对应的LBA后,才会存储至对应的存储空间,在服务器突然断电时,未写入flash的反向表内的LBA就越多,在重新构建FTL table时,需要逐个读取PPA中的LBA的数量就会越多,从而影响重新构建的效率,因此较为优选的实施方式是反向表的大小和sector的存储空间相同,但是反向表的大小远小于sector的存储空间也能够保证快速获取LBA到PPA的映射关系,只是可能存在存储空间的浪费,所以这并不是实现本发明的必要技术特征。
此外,当反向表的大小和sector的大小相同时,一个sector的大小一般是4KB,而4KB大小反向表可以存储1024个PPA对应的LBA,而1024个sector中,仅仅需要一个sector用来存储反向表,因此,反向表在flash中占用的空间非常少,可以直接划定某几个sector用以存储反向表,在查找的时候,在特定的位置查找反向表即可,进一步简化了重新构建FTLtable的流程。
基于上述任意实施例,考虑到服务器突然断电,而存在部分PPA对应的LBA未能及时存储,可以根据所述PPA的标识信息,判断在所述block中是否存在存储所述PPA对应的LBA的所述反向信息进一步改进,本发明的另一具体实施例中,可以包括:
如果在所述block中不存在所述PPA对应的所述反向信息,则在所述PPA中读取所述PPA对应的LBA。
需要说明的是,每个block中存储有多份反向表,每份反向表中存储有一个以上的PPA对应的LBA,当一份反向表的能够存储的LBA的数量达到上限时,才将该反向表进行存储。所以一旦服务器突然断电,就可能存在少数几个PPA对应的LBA未进行存储,在重新构建FTL table时,就需要在没有对应的反向表的各个PPA中依次读取LBA。
一般在SSD***中同一时刻只有一个block处于open的可写入数的状态,而block中在PPA中写入LBA也是按位置顺序依次写入的,并且每在一定数量的PPA中写入LBA,就会生成一个反向表,在服务器突然断电时,最多也只有一个block中正在写入的几个PPA中的LBA为记录到反向表并存储在sector,因此未存储对应的LBA的PPA特别少,所以相对于整个FTL table而言,只有少数几个PPA对应的LBA需要在PPA中读取,而绝大多数部分PPA对应的LBA直接查找反向表即可得到,依然能够达到大大缩短重建FTL table所耗费的时间。
基于上述实施例,本发明的另一种具体实施方式中,可以包括:
在根据所述映射关系构建FTL table之后,判断是否各个所述block中的所述反向信息均读取完成,如果否,则再次执行读取在block中的预先存储的反向信息的操作。
因为整个FTL table涉及到多个block,可以在读取block之前,将各个block按照使用的顺序先进性排序,然后按照该排序依次读取block中的反向表,避免读取未写入数据的block,当所有block中的反向表读取完成,也就确定了各个LBA到PPA的映射关系。
基于上述实施例,本发明提供的构建丢失的FTL table另一种具体实施方式流程图如图2所示,该方法可以包括:
步骤S201:将***中写入数据的block按写入数据的先后顺序排序。
步骤S202:按照排序选取一个block读取block中的反向表。
步骤S203:根据block中PPA的序列号,判断是否存在对应的反向表,如果是进入步骤S204,如果否,进入步骤205。
步骤S204:根据PPA的序列号查找反向表中PPA对应的LBA。
步骤S205:在逐个读取PPA中读取对应的LBA。
步骤S206:确定LBA到PPA的映射关系,并重构FTL table。
步骤S207:判断是否各个block中的反向表是否都读取完成,如果是进入步骤S208,如果否,进入步骤S202。
步骤S208:FTL table构建完成。
下面对本发明实施例提供的构建丢失的FTL table装置进行介绍,下文描述的构建丢失的FTL table的装置与上文描述的构建丢失的FTL table的方法可相互对应参照。
图3为本发明实施例提供的构建丢失的FTL table的装置的结构框图,参照图3构建丢失的FTL table的装置可以包括:
读取模块100,用于读取在block中的预先存储的反向信息,其中,所述反向信息为根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息;
判断查找模块200,用于根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息,如果是,则在所述反向信息中查找所述PPA对应的LBA,确定所述LBA到所述PPA的映射关系;
重建模块300,用于根据所述映射关系构建FTL table。
优选的,所述判断查询模块包括:
记录单元,用于按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息;按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息;
查找单元,用于根据在所述block中各个所述PPA的位置顺序,查找所述PPA在所述反向信息中对应的LBA。
优选的,判断单元,用于根据所述标识信息,判断在所述block中是否存在所述PPA对应的所述反向信息,其中,所述反向信息在所述block中的存储位置为根据各个所述PPA的位置顺序,选取存储所述反向信息的位置。
作为一种具体实施方式,本发明所提供的构建丢失的FTL table的装置还可以进一步包括:
所述判断单元用于如果在所述block中不存在所述PPA对应的所述反向信息,则在所述PPA中读取所述PPA对应的LBA。
本实施例的构建丢失的FTL table的装置用于实现前述的构建丢失的FTL table的方法,因此构建丢失的FTL table的装置中的具体实施方式可见前文中的构建丢失的FTLtable的方法的实施例部分,例如,读取模块100,用于实现上述构建丢失的FTL table的方法中步骤S101,判断查找模块200,用于实现上述步骤S102和S103,重建模块300,用于实现上述步骤S104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的构建丢失的FTL table的方法以及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种构建丢失的FTL table的方法,其特征在于,包括:
读取在block中的预先存储的反向信息,其中,所述反向信息为根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息;
根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息,如果是,则在所述反向信息中查找所述PPA对应的LBA,确定所述LBA到所述PPA的映射关系;
根据所述映射关系构建FTL table。
2.根据权利要求1所述的方法,其特征在于,所述标识信息为根据各个PPA在所述block中的位置顺序,确定的各个PPA位置的序列号信息;
所述根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息包括:
按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息。
3.根据权利要求2所述的方法,其特征在于,判断所述PPA是否存在对应的所述反向信息包括:
根据所述标识信息,判断在所述block中是否存在所述PPA对应的所述反向信息,其中,所述反向信息在所述block中的存储位置为根据各个所述PPA的位置顺序,选取存储所述反向信息的位置。
4.根据权利要求3所述的方法,其特征在于,所述反向信息为反向表,且所述反向表的大小不超过一个sector存储空间的大小。
5.根据权利要求1至4任一项所述的方法,其特征在于,根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息包括:
如果在所述block中不存在所述PPA对应的所述反向信息,则在所述PPA中读取所述PPA对应的LBA。
6.根据权利要求5所述的方法,其特征在于,在根据所述映射关系构建FTL table之后还包括:
判断各个所述block中的所述反向信息是否均读取完成,如果否,则再次执行读取在block中的预先存储的反向信息的操作。
7.一种构建丢失的FTL table的装置,其特征在于,包括
读取模块,用于读取在block中的预先存储的反向信息,其中,所述反向信息为根据各个PPA的标识信息记录各个所述PPA对应的LBA的反向信息;
判断查找模块,用于根据所述PPA的标识信息,判断所述PPA是否存在对应的所述反向信息,如果是,则在所述反向信息中查找所述PPA对应的LBA,确定所述LBA到所述PPA的映射关系;
重建模块,用于根据所述映射关系构建FTL table。
8.根据权利要求7所述的装置,其特征在于,所述判断查询模块包括:
记录单元,用于按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息;按照在所述block中各个所述PPA的位置顺序,依次记录各个所述PPA对应的LBA的反向信息;
查找单元,用于根据在所述block中各个所述PPA的位置顺序,查找所述PPA在所述反向信息中对应的LBA。
9.根据权利要求8所述的装置,其特征在于,所述判断查找模块包括:
判断单元,用于根据所述标识信息,判断在所述block中是否存在所述PPA对应的所述反向信息,其中,所述反向信息在所述block中的存储位置为根据各个所述PPA的位置顺序,选取存储所述反向信息的位置。
10.根据权利要求7至9任一项所述的装置,其特征在于,所述判断查找模块具体用于:如果在所述block中不存在所述PPA对应的所述反向信息,则在所述PPA中读取所述PPA对应的LBA。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710595638.8A CN107301133B (zh) | 2017-07-20 | 2017-07-20 | 一种构建丢失的FTL table的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710595638.8A CN107301133B (zh) | 2017-07-20 | 2017-07-20 | 一种构建丢失的FTL table的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107301133A true CN107301133A (zh) | 2017-10-27 |
CN107301133B CN107301133B (zh) | 2021-01-12 |
Family
ID=60133064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710595638.8A Active CN107301133B (zh) | 2017-07-20 | 2017-07-20 | 一种构建丢失的FTL table的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107301133B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086010A (zh) * | 2018-08-29 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种在全闪存存储阵列上提升元数据可靠性的方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1809890A (zh) * | 2003-06-23 | 2006-07-26 | 皇家飞利浦电子股份有限公司 | 用于在出现缺陷时将逻辑地址重映射到物理地址来记录信息的装置和方法 |
KR100894845B1 (ko) * | 2007-10-19 | 2009-04-24 | 인하대학교 산학협력단 | 플래시 변환 계층 모듈을 이용한 주소 변환 방법 |
CN101641680A (zh) * | 2008-03-01 | 2010-02-03 | 株式会社东芝 | 存储器*** |
CN101751343A (zh) * | 2009-12-28 | 2010-06-23 | 成都市华为赛门铁克科技有限公司 | 固态硬盘数据写入方法及装置 |
CN102253868A (zh) * | 2010-05-21 | 2011-11-23 | 联发科技股份有限公司 | 用于数据恢复的方法以及用于数据恢复的装置 |
CN102511044A (zh) * | 2011-09-06 | 2012-06-20 | 华为技术有限公司 | 一种数据删除方法及装置 |
CN103064765A (zh) * | 2012-12-28 | 2013-04-24 | 华为技术有限公司 | 数据恢复方法、装置及集群存储*** |
CN104081346A (zh) * | 2012-02-07 | 2014-10-01 | 英特尔公司 | 用于使用跟踪数据消除处理器间中断来支持多处理器虚拟机环境中的地址转换的方法和设备 |
WO2016033287A1 (en) * | 2014-08-29 | 2016-03-03 | Hitachi Chemical Co., Ltd. | Methods for collecting cervical-vaginal fluids and isolating exosome and microvesicles for molecular analysis |
CN105468294A (zh) * | 2014-09-29 | 2016-04-06 | Hgst荷兰有限公司 | 用于固态存储设备的脱机去重 |
CN105493051A (zh) * | 2013-06-25 | 2016-04-13 | 马维尔国际贸易有限公司 | 自适应高速缓冲存储器控制器 |
CN106484319A (zh) * | 2015-09-02 | 2017-03-08 | 爱思开海力士有限公司 | 用于非易失性存储器的支持无效命令 |
-
2017
- 2017-07-20 CN CN201710595638.8A patent/CN107301133B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1809890A (zh) * | 2003-06-23 | 2006-07-26 | 皇家飞利浦电子股份有限公司 | 用于在出现缺陷时将逻辑地址重映射到物理地址来记录信息的装置和方法 |
KR100894845B1 (ko) * | 2007-10-19 | 2009-04-24 | 인하대학교 산학협력단 | 플래시 변환 계층 모듈을 이용한 주소 변환 방법 |
CN101641680A (zh) * | 2008-03-01 | 2010-02-03 | 株式会社东芝 | 存储器*** |
CN101751343A (zh) * | 2009-12-28 | 2010-06-23 | 成都市华为赛门铁克科技有限公司 | 固态硬盘数据写入方法及装置 |
CN102253868A (zh) * | 2010-05-21 | 2011-11-23 | 联发科技股份有限公司 | 用于数据恢复的方法以及用于数据恢复的装置 |
CN102511044A (zh) * | 2011-09-06 | 2012-06-20 | 华为技术有限公司 | 一种数据删除方法及装置 |
CN104081346A (zh) * | 2012-02-07 | 2014-10-01 | 英特尔公司 | 用于使用跟踪数据消除处理器间中断来支持多处理器虚拟机环境中的地址转换的方法和设备 |
CN103064765A (zh) * | 2012-12-28 | 2013-04-24 | 华为技术有限公司 | 数据恢复方法、装置及集群存储*** |
CN105493051A (zh) * | 2013-06-25 | 2016-04-13 | 马维尔国际贸易有限公司 | 自适应高速缓冲存储器控制器 |
WO2016033287A1 (en) * | 2014-08-29 | 2016-03-03 | Hitachi Chemical Co., Ltd. | Methods for collecting cervical-vaginal fluids and isolating exosome and microvesicles for molecular analysis |
CN105468294A (zh) * | 2014-09-29 | 2016-04-06 | Hgst荷兰有限公司 | 用于固态存储设备的脱机去重 |
CN106484319A (zh) * | 2015-09-02 | 2017-03-08 | 爱思开海力士有限公司 | 用于非易失性存储器的支持无效命令 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086010A (zh) * | 2018-08-29 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种在全闪存存储阵列上提升元数据可靠性的方法 |
CN109086010B (zh) * | 2018-08-29 | 2021-12-17 | 郑州云海信息技术有限公司 | 一种在全闪存存储阵列上提升元数据可靠性的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107301133B (zh) | 2021-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10101930B2 (en) | System and method for supporting atomic writes in a flash translation layer | |
US9189420B2 (en) | Wear-leveling method, storage device, and information system | |
CN103049390B (zh) | 应用元数据的数据处理方法及存储*** | |
CN109542342B (zh) | 元数据管理与数据重构方法、设备及存储介质 | |
CN101446921B (zh) | 一种Flash存储器的动态存储方法 | |
CN103577121A (zh) | 一种基于nand flash的高可靠线性文件存取方法 | |
CN102981966B (zh) | 一种均衡分配Flash存储块的数据存储方法 | |
CN103279366B (zh) | 固态硬盘及掉电后基于固态硬盘快速开机的方法 | |
CN103226965B (zh) | 基于时间位图的音视频数据存取方法 | |
CN104008207B (zh) | 基于光盘的数据库的数据外部存储***及数据存储方法 | |
CN104375784B (zh) | 一种降低虚拟磁盘管理复杂度的方法和装置 | |
CN105938447B (zh) | 数据备份装置及方法 | |
CN112631950B (zh) | 一种l2p表的保存方法、***、设备以及介质 | |
CN108399050B (zh) | 一种数据处理方法及装置 | |
CN112052121B (zh) | 一种硬盘数据的恢复方法及*** | |
CN102214143A (zh) | 一种多层单元闪存的管理方法、装置及存储设备 | |
CN101206595A (zh) | 以快照指针进行磁盘快照的方法 | |
CN107273046A (zh) | 一种基于固态盘阵列的数据处理方法及*** | |
CN106055279A (zh) | 管理固态硬盘的地址映射表的方法、装置及固态硬盘 | |
CN109144754A (zh) | 一种可靠性测试方法及装置 | |
CN104166627B (zh) | 一种基于单片机的nand‑flash写操作方法 | |
TW200929237A (en) | Memory architecture and configuration method thereof | |
CN107301133A (zh) | 一种构建丢失的FTL table的方法及装置 | |
WO2024077863A1 (zh) | 一种全闪存储***的恢复方法及相关装置 | |
CN105900067A (zh) | 指示储存器装置的重建状态 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20201202 Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601 Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |