CN101782875B - 存储设备和数据存储方法 - Google Patents

存储设备和数据存储方法 Download PDF

Info

Publication number
CN101782875B
CN101782875B CN201010104788.2A CN201010104788A CN101782875B CN 101782875 B CN101782875 B CN 101782875B CN 201010104788 A CN201010104788 A CN 201010104788A CN 101782875 B CN101782875 B CN 101782875B
Authority
CN
China
Prior art keywords
information
management data
memory module
increment
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
CN201010104788.2A
Other languages
English (en)
Other versions
CN101782875A (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.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Huawei Symantec Technologies 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 Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN201010104788.2A priority Critical patent/CN101782875B/zh
Publication of CN101782875A publication Critical patent/CN101782875A/zh
Priority to PCT/CN2011/070728 priority patent/WO2011091761A1/zh
Application granted granted Critical
Publication of CN101782875B publication Critical patent/CN101782875B/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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering

Abstract

本发明实施例提供一种存储设备和数据存储方法。其中存储设备,包括数据存储模块;管理数据存储模块,用于存储用以管理所述数据存储模块进行数据处理的管理数据信息;增量信息存储模块,用于存储数据处理过程中产生的管理数据信息的增量信息,以用于在异常断电时,结合所述数据存储模块中已备份的管理数据信息恢复出所述管理数据存储模块中存储的所述管理数据信息;所述增量信息存储模块采用非易失性存储介质;控制器,用于根据所述管理数据信息进行数据处理,并根据数据处理结果更新所述管理数据信息及所述管理数据信息的增量信息。采用本发明实施例的技术方案,能够保证存储设备的正常工作,提高存储设备的可靠性。

Description

存储设备和数据存储方法
技术领域
本发明实施例涉及数据存储技术领域,尤其涉及一种存储设备和数据存储方法。
背景技术
现有存储技术中,SSD中的闪速存储器采用数个FLASH芯片,用于存储数据。SSD中闪速存储器的管理数据信息为SSD处理数据所需的关键数据,该管理数据信息例如:主机端的逻辑块地址(Logical Block Address;以下简称LBA)与闪速存储器的存储介质的物理块地址(Physical BlockAddress;以下简称PBA)的映射关系、日志信息、闪速存储器中FLASH芯片的坏块信息等。当SSD执行数据的读、写或搬移等操作过程时,需要相应的修改闪速存储器的管理数据信息。如果SSD频繁执行的数据的读、写或转移等操作,则对管理数据信息将进行频繁的修改。为了保证管理数据信息的访问速度,现有技术将闪速存储器的管理数据信息缓存在高速易失性存储介质中。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:现有技术的SSD中,闪速存储器的管理数据信息存储在易失性存储介质中。一旦SSD在正常工作过程中发生异常断电故障,易失性存储介质中存储的管理数据信息都会丢失,降低了SSD的数据存储可靠性。
发明内容
本发明实施例提供一种存储设备和数据存储方法,有效提高SSD的数据存储可靠性。
本发明实施例提供一种存储设备,包括数据存储模块;还包括:
管理数据存储模块,用于存储用以管理所述数据存储模块进行数据处理的管理数据信息;
增量信息存储模块,用于存储数据处理过程中产生的管理数据信息的增量信息,以用于在异常断电时,结合所述数据存储模块中已备份的管理数据信息恢复出所述管理数据存储模块中存储的所述管理数据信息;所述增量信息存储模块采用非易失性存储介质;
控制器,用于根据所述管理数据信息进行数据处理,并根据数据处理结果更新所述管理数据信息及所述管理数据信息的增量信息。
本发明实施例提供一种数据存储方法,包括:
将用以管理数据存储模块进行数据处理的管理数据信息存储至管理数据存储模块中;
将数据处理过程中产生的管理数据信息的增量信息存储至增量信息存储模块中,以用于在异常断电时,结合所述数据存储模块中已备份的管理数据信息恢复出所述管理数据存储模块中存储的所述管理数据信息;所述增量信息存储模块采用非易失性存储介质;
根据所述管理数据信息进行数据处理,并根据数据处理结果相应更新所述管理数据信息及所述管理数据信息的增量信息。
本发明实施例的存储设备和数据存储方法,采用非易失性存储介质存储数据存储模块的管理数据信息的增量信息,以用于在异常断电时,结合数据存储模块中已备份的管理数据信息,恢复出用以管理数据存储模块进行数据处理的管理数据信息;有效地防止了SSD出现异常断电时,所述数据存储模块的管理数据信息的丢失,能够保证SSD的正常工作,提高了SSD的可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种存储设备的结构示意图;
图2为本发明实施例提供的一种数据存储方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
现有技术中SSD的运转过程中,数据的读、写或搬移等操作会涉及到对SSD中闪速存储器的管理数据信息(也称之为表项)的频繁修改操作,为了保证管理数据信息的访问速度,在SSD运转过程中,将闪速存储器的管理数据信息存放在同步动态随机存储器(Synchronous Dynamic randomaccess memory;以下简称SDRAM),第二代双倍速率同步动态随机存储器(Double Data Rate Synchronous Dynamic random access memory II;以下简称DDR II)或第三代双倍速率同步动态随机存储器(Double DataRate Synchronous Dynamic random access memory III;以下简称DDR III)等高速易失性存储介质中。例如,由于SSD与传统机械硬盘通常采用固定映射关系的处理方式不同,在SSD中存储时,主机端的逻辑块地址LBA与存储介质的物理块地址PBA对应的映射关系虽然有一定的原则,但是并不固定,为了保证存取速度,通常将用来维护LBA与PBA的映射关系的映射表存放在SDRAM、DDRII或DDRIII等高速易失性存储介质中。
闪速存储器的管理数据信息也可以包括有日志信息,该日志信息里通常包括有SSD运转过程中一些状态信息,尤其是在SSD出现故障的时候,根据日志信息里记录的异常信息对于解决SSD故障具有重要的意义。
闪速存储器的管理数据信息也可以包括有闪速存储器中FLASH芯片的坏块信息等等对SSD管理有重要作用的信息。当SSD要停止工作时,SSD控制器会将管理数据信息备份至闪速存储器中,系统下次上电工作,再根据备份的管理数据信息,向SSD的高速易失性存储介质中导出管理数据信息,以保证SSD继续进行正常工作。
下面结合附图和具体实施例进一步说明本发明实施例的技术方案。
图1为本发明实施例提供的一种存储设备的结构示意图;如图1所示,本实施例的存储设备包括:数据存储模块10、管理数据存储模块11、增量信息存储模块12和控制器13。
数据存储模块10为存储设备的主要存储结构,用于存储业务数据。数据存储模块具体可以为FLASH存储器,采用数个FLASH芯片组成。
管理数据存储模块11用于存储用以管理数据存储模块10进行数据处理的管理数据信息。也就是说,管理数据存储模块11存储一些管理上述数据存储模块10的一些关键数据信息即管理数据信息,以便于对数据存储模块10进行正确的数据处理。由于在处理处理过程中,要频繁的访问管理数据信息,优选地,管理数据存储模块11采用易失性存储介质,按照易失性存储介质的存储机制存储管理数据信息;以提供较高的读写性能。本实施例的管理数据信息包括有:主机端LBA与数据存储模块10中FLASH芯片中的PBA之间的映射关系、日志信息、以及数据存储模块10中的FLASH芯片的坏块信息等等用于管理数据存储模块10的一些关键数据信息。
增量信息存储模块12用于存储数据处理过程中产生的管理数据信息的增量信息,以在异常断电时,用于结合数据存储模块10中已备份的管理数据信息恢复出管理数据存储模块11中存储的所述管理数据信息;增量信息存储模块12优选地采用非易失性存储介质。
控制器13用于根据所述管理数据信息进行数据处理,并根据数据处理结果更新所述管理数据信息及所述管理数据信息的增量信息。
具体地,当控制器13根据管理数据存储模块11中存储的管理数据信息,在数据存储模块10中进行读写数据以及删除数据等操作处理的时候,对应的用于管理数据存储模块10的一些关键数据即管理数据信息等都会发生相应的变化。比如对应的主机端LBA与数据存储模块10中FLASH芯片中的PBA之间的映射关系就发生了变化。进行该次数据处理将LBA对应的旧的PBA修改为对应一个新的PBA,即将“LBA→PBA(old)”修改为“LBA→PBA(new)”。对于此次数据处理,对应的LBA与PBA之间的映射信息的增量信息为LBA对应的新的PBA,可以记为“LBA→PBA(new)”。此次数据处理过程中,还可以存在日志信息的变化,以及数据存储模块10中的FLASH芯片的坏块信息等等。因此此次数据处理,也可能发生日志信息的增量信息和坏块信息的增量信息。
然后根据数据处理结果可以在增量信息存储模块12中更新即增加的增量信息可以为“LBA→PBA(new)”、日志信息的增量信息和坏块信息的增量信息等等管理数据信息的增量信息。同时也根据数据处理结果更新管理数据存储模块11中的管理数据信息。为了减少在更新数据过程中发生的异常掉电,导致数据丢失的概率,优选地,根据数据处理结果首先更新增量信息存储模块12中的管理数据信息的增量信息,然后再更新管理数据存储模块11中的管理数据信息。采用此优选方案,可以保证即使在更新管理数据存储模块11中的管理数据信息是出现异常掉电,仍然能够根据增量信息存储模块12中的管理数据信息的增量信息和数据存储模块10中已备份的管理数据信息恢复出管理数据存储模块11中的管理数据信息。
需要说明的是,在存储设备正常掉电停止工作时,因为存储管理数据信息的管理数据存储模块11优选为易失性存储介质,因此,掉电前将其中的存储管理数据信息都备份在数据存储模块10中,当存储设备正常上电工作时,再将数据存储模块10中的备份的管理数据信息复制一份导出至管理数据存储模块11,以供存储设备进行有效地数据处理。所以,数据存储模块10中一直备份有一份管理数据信息。
当存储设备异常掉电时,由于增量信息存储模块12优选地采用非易失性存储介质,即使异常掉电时,增量信息存储模块12存储的管理数据信息的增量信息也不会丢失。此时结合增量信息存储模块12存储的管理数据信息的增量信息和数据存储模块10中已备份的管理数据信息便可以恢复出掉电时管理数据存储模块11中存储的管理数据信息。从而保证存储设备的正常运行。
本实施例的存储设备可以为固态硬盘SSD。
本实施例的存储设备,通过采用非易失性存储介质存储管理数据信息的增量信息,采用易失性存储介质的管理数据存储模块11存储管理数据信息,保证了在存储设备出现异常断电故障,仍然能够根据非易失性存储介质中存储的管理数据信息的增量信息和数据存储模块10中备份的管理数据信息重构出管理数据存储模块11中存储的管理数据信息;本实施例的技术方案保证存储设备访问速度同时,还提高了存储设备的可靠性。
需要说明的是,本实施例中的增量信息存储模块12具体可以采用磁阻随机存取存储器(Magnetic Random Access Memory;以下简称MRAM)、铁电存储器(Ferroelectric Random Access Memory;以下简称FRAM)或者非易失静态随机存取存储器(Nonvolatile Static Random Access Memory;以下简称NVSRAM)等之类的高速非易失性存储介质,且此类非易失性存储介质具有读写速度块、功耗低、重复读写次数高等特性,最主要的是在断电时存储在其中的数据不会丢失。
本实施例的管理数据存储模块采用的易失性存储介质优选为SDRAM、DDRII或DDRIII。
在上述实施例的基础上,控制器13还用于按照预置策略,将所述管理数据信息的增量信息转存到数据存储模块10上,并根据所述管理数据信息的增量信息更新数据存储模块中10中已备份的管理数据信息。这里预置的策略,具体可以是任何预设的条件,当满足此条件时,将增量信息存储模块12中存储的所述管理数据信息的增量信息转存到数据存储模块10,以用于更新数据存储模块中已备份的管理数据信息。比如预置策略可以当增量信息存储模块12中的增量信息所占的存储空间达到预定值时(即增量信息存储模块12采用的存储介质即将存满);由于管理数据的增量信息是按照条数存储,也可以在增量信息存储模块12中存储的管理数据的增量信息的数量达到一定值如1、2、或3等作为预置策略。所述预置策略还可以是发生异常掉电等等情况。对应的控制器根据这些预置策略,将增量信息存储模块12中的管理数据信息的增量信息转存到数据存储模块10中,以用于根据这些管理数据信息的增量信息更新数据存储模块10中已存储的管理数据信息。采用上述方案能够及时地将管理数据信息及时备份,防范了管理数据信息的丢失,有效地提高了存储设备磁盘的可靠性。
需要说明的是,管理数据信息的增量信息是根据数据处理结果一条一条存储的。对应的每一个增量信息的数据处理都存在先后顺序关系,所以优选地按照数据处理的先后顺序,存储对应的管理数据信息的增量信息。当将增量信息存储模块12中的管理数据信息的增量信息转存到数据存储模块10中,更新数据存储模块10中的管理数据信息时,具体地,也必须按照各条管理数据信息的增量信息对应的数据处理的先后顺序,利用各管理数据信息的增量信息分别依次更新数据存储模块10中的管理数据信息。比如增量信息存储模块12中存储的PBA与LBA之间的增量信息可以采用如下表1的形式存储。
表1
Figure GSA00000010254000071
表1中管理数据的增量信息按照对应的数据处理的先后顺序由下向上存储,也可以认为存储时间的先后顺序是由下向上。对应将表1的管理数据信息的增量信息转存至数据存储模块10中时,利用这些管理数据信息更新数据存储模块10中的管理数据信息时,按照各增量信息对应的数据处理的先后顺序,分别依次更新数据存储模块10中的管理数据信息。比如上表1中按照由下向上的顺序,分别利用增量信息1、增量信息2、增量信息3和增量信息4依次分别更新数据存储模块10中的管理数据信息。
对于管理数据信息中包括的日志信息和/或数据存储模块10中FLASH芯片坏块信息,同上述存储与更新情况相同,在此不再赘述。
进一步地,在上述实施例的技术方案的基础上,由于大容量的高速非易失性存储介质价格昂贵,本实施例的增量信息存储模块12可以采用小容量的非易失性存储介质,但是采用小容量的非易失性存储介质,这样致使增量信息存储模块12很快就会被存满。
为了进一步保证存储设备的可靠性,优选地。控制器13还用于增量信息存储模块12存储的所述管理数据信息的增量信息的数量大于预设门限值时,将所述管理数据信息的增量信息转存到数据存储模块10上,并利用这些管理数据信息的增量信息更新数据存储模块10上已备份的管理数据信息。增量信息存储模块12存储的所述管理数据信息的增量信息是按照每一条增量信息来存储的,存储之前,可以具体根据增量信息存储模块12的容量大小,预先设定一个所述数据管理信息的增量信息的数量的门限值,当所述管理数据信息的增量信息的数量到达这个门限值时,增量信息存储模块12的空间即将用完,此时控制器13将这部分所述管理数据信息的增量信息转存到数据存储模块10上,因为所有数据操作处理存在一定的时序性,所以增量信息存储模块12存储的管理数据信息的增量信息的存储也必须严格按照对应的数据处理的先后的时序关系来存储。将增量信息存储模块12中的所述管理数据信息的增量信息向数据存储模块10转存时,也可以优先地按照先后时序关系,时序在前的所述管理数据信息的增量信息先转存,时序在后的后转存;或者也可以一起转存,但是更新时,必需按照对应的数据处理的先后顺序依次更新数据存储模块10中的管理数据信息。具体可以采用将增量信息存储模块12分为多个单元,每个单元存储一条增量信息,所有增量信息分别按照相应数据处理操作执行的先后时序依次存放在各个单元中。根据各单元之间的时序先后顺序,利用各对应的增量信息依次更新数据存储模块10中的管理数据信息。对于管理数据信息包括LBA与PBA之间的映射表时,对应的管理数据存储模块的存储以及利用管理数据信息的增量信息更新数据存储模块10中的管理数据信息的过程,可参考上述表1的相关描述,在此不再赘述。对于管理数据信息中包括的日志信息和/或数据存储模块10中FLASH芯片坏块信息,情况类似。
需要说明的是,当首次向数据存储模块10转存管理数据信息的增量信息时,数据存储模块10中用于更新的管理数据信息是此次存储设备上电工作后导出至管理数据存储模块11中的管理数据信息的备份管理数据信息;以后每次更新管理数据信息的增量信息时,数据存储模块10中用于更新的管理数据信息都是上一次将所述管理数据信息的增量信息转存至数据存储模块10后,更新数据存储模块10中的管理数据信息后得到的管理数据信息。
本实施例的存储设备的工作流程如下:上电工作时,控制器13将数据存储模块10中存储的上次停止工作时存储的管理数据信息导出至管理数据存储模块11中,以保证存储设备的正常工作,然后按照上述本实施例的技术方案进行数据处理。当存储设备即将停止工作时,控制器13控制将管理数据存储模块11中存储的管理数据信息更新至数据存储模块10中,并同时标记增量信息存储模块12中记录增量信息的位置。下次上电后,从上次断电在增量信息存储模块12中标记的位置之后开始记录增量信息,由于正常断电时,已经将管理数据存储模块11中的管理数据信息更新至数据存储模块10中,也可以直接将增量信息存储模块12中此标记位置之前的增量信息删除。当存储设备异常断电时,管理数据存储模块11中的管理数据信息丢失,增量信息存储模块12采用高速非易失性存储介质,只需要很小的电量即可完成对断电时对应的数据处理操作的管理信息的增量信息的存储。这样可以根据增量信息存储模块12中所述管理数据信息的增量信息和数据存储模块10中已备份的管理数据信息,实现对管理数据存储模块11中丢失的管理数据信息的重构,保证存储设备的正常工作。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
图2为本发明实施例提供的一种数据存储方法的流程图,如图2所示,本实施例的数据存储方法,包括:
步骤100、将用以管理数据存储模块进行数据处理的管理数据信息存储至管理数据存储模块中;
步骤101、将数据处理过程中产生的管理数据信息的增量信息存储至增量信息存储模块中,以用于在异常断电时,结合所述数据存储模块中已备份的管理数据信息恢复出所述管理数据存储模块中存储的所述管理数据信息;所述增量信息存储模块采用非易失性存储介质;
步骤102、根据所述管理数据信息进行数据处理,并根据数据处理结果相应更新所述管理数据信息及所述管理数据信息的增量信息。
具体地,本实施例的管理数据存储模块采用易失性存储介质。易失性存储介质具有访问速度快,且大容量的高速易失型存储介质成本较低。本实施将用于管理数据存储模块的管理数据信息存储至管理数据存储模块中。但是由于易失性存储介质在出现异常断电时的数据会丢失,本实施例采用将数据处理过程中产生的管理数据信息的增量信息存储至增量信息存储模块中,增量信息存储模块采用非易失性存储介质的存储机制存储上述所述的管理数据信息的增量信息。控制器具体根据管理数据存储模块中存储的所述管理数据信息对数据存储模块中存储的数据对数据存储模块中的数据进行数据处理操作,并根据对应数据处理结果,相应更新增量信息存储模块中存储的所述管理数据信息的增量信息,以及根据对应数据处理结果更新管理数据存储模块中存储的所述管理数据信息。这样既能保证有效地访问速度,又能提高存储设备的可靠性。
需要说明的是,优选地,控制器根据数据处理操作,先更新增量信息存储模块中的存储的管理数据信息的增量信息;然后再根据数据处理操作,再更新管理信息存储模块中的管理数据信息的增量信息。采用此优选方案,可以保证即使在控制器更新管理数据存储模块中的管理数据信息是出现异常掉电,仍然能够根据增量信息存储模块中的管理数据信息的增量信息和数据存储模块中已备份的管理数据信息恢复出管理数据存储模块中的管理数据信息。
需要说明的是,在上述实施例的基础上,还可以进一步包括一种优选地技术方案:按照预置策略,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。
具体地,按照预置策略,控制器将增量信息存储模块中存储的管理数据信息的增量信息转存到数据存储模块上,并根据这些管理数据信息的增量信息更新数据存储模块中已备份的管理数据信息。这里预置的策略,具体可以是任何预设的条件,当满足此条件时,将增量信息存储模块中存储的这些管理数据信息的增量信息转存到数据存储模块,以用于更新数据存储模块中已备份的管理数据信息。比如所述预置策略可以是发生异常掉电等等情况。对应的控制器根据这些预置策略,将增量信息存储模块中的管理数据信息的增量信息转存到数据存储模块中,以用于根据这些管理数据信息的增量信息更新数据存储模块中已存储的管理数据信息。
例如,因为现有的采用非易失性存储介质的增量信息存储模块容量都比较小,为了保证数据存储的可靠性,一种优选地方案具体还可以包括:
在所述增量信息存储模块存储的所述管理数据信息的增量信息数量大于预设门限值时,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息的增量信息更新所述数据存储模块上已备份的管理数据信息。
具体地,可以在增量信息存储模块中预设一个所述管理数据信息的增量信息数量门限值,根据增量信息存储模块的具体容量大小设置一个可容纳的增量信息的数量门限值。优选地,该门限值设在增量信息存储模块即将存满时,此时控制器将这些此时增量信息存储模块中的所有管理数据信息的增量信息转存到数据存储模块中,并根据转存的所述管理数据信息的所有增量信息对数据存储模块中已备份的管理数据信息进行更新修改。所述管理数据信息的增量信息按照相对应的数据处理的先后顺序存储的。利用转存后的管理数据信息的增量信息更新数据存储模块中已备份的管理数据信息时,也按照对应的先后时序,分别依次更新数据存储模块中已备份的管理数据信息的增量信息。
由于管理数据的增量信息是按照条数存储,也可以在增量信息存储模块中存储的管理数据的增量信息的数量达到一定值作为预置策略。然后在增量信息存储模块中存储的管理数据的增量信息的数量达到一定值时,将管理数据信息的增量信息转存到数据存储模块上,并根据管理数据信息的增量信息更新数据存储模块中所述已备份的管理数据信息的过程同上述实施例的描述相同,详细可参照上述实施例的描述,在此不再赘述。
需要说明的是本实施例的增量信息存储模块可以采用磁阻随机存取存储器、铁电存储器或者非易失静态随机存储器等高速非易失性存储介质。
需要说明的是本实施例的管理数据存储模块可以采用SDRAM、DDRII或DDRIII等高速易失性存储介质。
本实施例中的数据存储方法与上述图1所示实施例的存储设备的完成数据存储的实现机制相同,详细参考上述相关实施例记载的内容,在此不再赘述。
本实施例的数据存储方法,通过采用非易失性介质存储管理数据信息的增量信息,采用管理数据存储模块存储管理数据信息;既能够保证存储设备的访问速度,又能防范了管理数据信息的丢失,有效地提高了存储设备的可靠性。
鉴于LBA与PBA之间映射关系的映射表的重要性,现有技术采用定时将存储在易失性存储介质中的映射表备份至由多个FLASH芯片构成的FLASH存储器中来保护映射表。定时备份的方式虽然能在一定程度上保护映射表,但是毕竟FLASH芯片上存储的映射关系是备份时刻的映射关系,由于FLASH芯片使用过程中映射关系不断发生变化,异常断电时,备份与当前最新的映射关系很可能不完全一致,因此利用备份的映射表极有可能恢复出来不是最新的映射关系。
下面以管理数据信息为主机端的LBA与FLASH芯片的PBA映射关系的映射表为例,详细说明本发明实施例的技术方案。
具体地,本发明实施例的技术方案中LBA与PBA之间的映射表是存储在管理数据存储模块中,而LBA与PBA之间的映射表的表项增量(即一次数据处理操作对应的修改增量)存储在增量信息存储模块中,控制器根据存储在管理数据存储模块中的LBA与PBA之间的映射表对数据存储模块中FLASH芯片中的数据进行读、写、或搬移等操作,每执行完一次数据的操作处理后,需要将当前操作的LBA与对应此次操作修改后所对应的新的PBA作为一个表项增量信息存储在增量信息存储模块中,即根据此次数据操作处理的结果更新增量信息存储模块。
同时,在管理数据存储模块中存储的LBA与PBA之间的映射表中找到当前数据操作处理的LBA对应的旧的PBA,然后将该旧的PBA修改为与该当前数据操作处理后的LBA相对应的新的PBA;即对存储在管理数据存储模块中的映射表进行更新。
需要说明的是,为了避免更新过程中异常断电,优选地,每次数据操作处理后,先更新增量信息存储模块中的表项增量信息,再更新管理数据存储模块中的映射表。这样即使在更新过程中异常断电,由于增量信息存储模块采用存储容量较小的非易失性存储介质,在异常掉电时之需要其电容提供的很小的电量即可将表项增量信息存储。然后根据增量信息存储模块中存储的表项增量信息结合数据存储模块中已备份的管理数据信息即可实现对管理数据存储模块中在异常掉电时丢失的管理信息数据进行重构,以保证存储设备的正常工作,提高了存储设备的可靠性。
由于每一个数据操作处理都对应一个表项增量信息,将所有表项增量信息按照时序先后顺序存放在增量信息存储模块中,具体可以将增量信息存储模块分成多个存储单元,每一表项增量信息占用一个存储单元;将所有表项增量信息按照时序先后顺序依次存放在各存储单元中。
当增量信息存储模块中的对应表项增量信息的数量大于预设门限值时,即增量信息存储模块中的存储单元即将存满,此时将增量信息存储模块中所有表项增量信息转移至FLASH芯片中,利用所有表项增量信息更新所述FLASH芯片备份更新已备份的LBA与PBA之间的映射表。这里需要说明的是,当增量信息存储模块中的表项增量信息转移至数据存储模块后,根据各个表项增量信息对应的数据处理操作的先后时序,分别依次利用各表项增量信息对数据存储模块中的映射表进行更新。更新过程中,对应每一数据处理操作对应的表项增量信息,将LBA对应的旧的PBA修改为此次操作处理后该LBA对应的新的PBA。
需要说明的是,存储设备上电后的首次转存表项增量信息,数据存储模块中的映射表是与存储设备此次上电工作后由管理数据存储模块导出至管理数据存储模块中的管理数据信息一致,也即是上次正常停止工作时,由管理数据存储模块中转存到数据存储模块中的映射表。以后每次更新管理数据存储模块中的映射表,都是以前一次利用转存至管理数据存储模块地各表项增量信息,分别依次更新管理数据存储模块中的映射表后所得到的映射表为基础。
对于如日志信息、数据存储模块中FLASH芯片的坏块信息等之类的管理数据信息,存储的实现机制相同,不再赘述。
本实施例通过采用将映射表的表项增量信息按照先后时序存储到一非易失性存储介质中,并在表项增量信息的数量达到预设门限值时,将所有表项增量信息转存到数据存储模块中以对数据存储模块中,然后按照各表项增量信息存储的先后时序(也就是各表项增量信息对应的数据处理操作的先后时序)对数据存储模块中已备份的映射表进行更新。即使在存储设备异常断电时,仍能够根据非易失性存储介质中的表项增量单元和数据存储模块中的备份的映射表重构出断电时易失性存储介质中的映射表信息,能够保证存储设备的正常工作,提高了存储设备的可靠性。
通过以上的实施方式的描述,本领域的技术人员可以清楚中地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种存储设备,包括数据存储模块,其特征在于,还包括:
管理数据存储模块,用于存储用以管理所述数据存储模块进行数据处理的管理数据信息;
增量信息存储模块,用于存储数据处理过程中产生的管理数据信息的增量信息,以用于在异常断电时,结合所述数据存储模块中已备份的管理数据信息恢复出所述管理数据存储模块中存储的所述管理数据信息;所述增量信息存储模块采用非易失性存储介质;
控制器,用于根据所述管理数据信息进行数据处理,并根据数据处理结果更新所述管理数据信息及所述管理数据信息的增量信息。
2.根据权利要求1所述的存储设备,其特征在于:
所述控制器,还用于按照预置策略,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。
3.根据权利要求1所述的存储设备,其特征在于,
所述控制器,还用于在所述增量信息存储模块存储的所述管理数据信息的增量信息的数量大于预设门限值时,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。
4.根据权利要求3所述的存储设备,其特征在于,
所述控制器,还用于当所述增量信息存储模块存储的所述管理数据信息的增量信息的数量大于1时,将所述管理数据信息的增量信息转存到所述数据存储模块上,并按照各个所述管理数据信息的增量信息对应的数据处理的先后顺序,利用各所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。
5.根据权利要求1-4任一所述的存储设备,其特征在于,所述增量信息存储模块采用的非易失性存储介质为磁阻随机存取存储器、铁电存储器或者非易失静态随机存储器。
6.根据权利要求1-4任一所述的存储设备,其特征在于,所述管理数据存储模块采用的存储介质为同步动态随机存储器、第2代双倍速率同步动态随机存储器或第3代双倍速率同步动态随机存储器。
7.一种数据存储方法,其特征在于,包括:
将用以管理数据存储模块进行数据处理的管理数据信息存储至管理数据存储模块中;
将数据处理过程中产生的管理数据信息的增量信息存储至增量信息存储模块中,以用于在异常断电时,结合所述数据存储模块中已备份的管理数据信息恢复出所述管理数据存储模块中存储的所述管理数据信息;所述增量信息存储模块采用非易失性存储介质;
根据所述管理数据信息进行数据处理,并根据数据处理结果相应更新所述管理数据信息及所述管理数据信息的增量信息。
8.根据权利要求7所述的数据存储方法,其特征在于,
按照预置策略,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。
9.根据权利要求7所述的数据存储方法,其特征在于,
在所述增量信息存储模块存储的所述管理数据信息的增量信息的数量大于预设门限值时,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。
10.根据权利要求9所述的数据存储方法,其特征在于,当所述增量信息存储模块存储的所述管理数据信息的增量信息数量大于1时,将所述管理数据信息的增量信息转存到所述数据存储模块上,并根据所述管理数据信息 的增量信息更新所述数据存储模块中所述已备份的管理数据信息,包括:
按照各个所述管理数据信息的增量信息对应的数据处理的先后顺序,利用各所述管理数据信息的增量信息更新所述数据存储模块中所述已备份的管理数据信息。 
CN201010104788.2A 2010-01-29 2010-01-29 存储设备和数据存储方法 Active CN101782875B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201010104788.2A CN101782875B (zh) 2010-01-29 2010-01-29 存储设备和数据存储方法
PCT/CN2011/070728 WO2011091761A1 (zh) 2010-01-29 2011-01-27 存储设备和数据存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010104788.2A CN101782875B (zh) 2010-01-29 2010-01-29 存储设备和数据存储方法

Publications (2)

Publication Number Publication Date
CN101782875A CN101782875A (zh) 2010-07-21
CN101782875B true CN101782875B (zh) 2012-01-04

Family

ID=42522879

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010104788.2A Active CN101782875B (zh) 2010-01-29 2010-01-29 存储设备和数据存储方法

Country Status (2)

Country Link
CN (1) CN101782875B (zh)
WO (1) WO2011091761A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101782875B (zh) * 2010-01-29 2012-01-04 成都市华为赛门铁克科技有限公司 存储设备和数据存储方法
CN103685350B (zh) * 2012-09-04 2016-12-21 阿里巴巴集团控股有限公司 存储系统的同步方法及相关的设备
CN103049221A (zh) * 2012-12-19 2013-04-17 创新科存储技术有限公司 磁盘阵列缓存刷写处理方法和装置
CN103902406A (zh) * 2012-12-31 2014-07-02 杨威锋 高可靠性固态存储设备的映射表信息的保存和恢复技术
US10162561B2 (en) * 2016-03-21 2018-12-25 Apple Inc. Managing backup of logical-to-physical translation information to control boot-time and write amplification
CN106502928B (zh) * 2016-09-29 2019-08-20 华为技术有限公司 一种存储系统掉电保护方法、存储控制器及电子设备
CN106875977A (zh) * 2017-02-27 2017-06-20 郑州云海信息技术有限公司 一种固态硬盘调试方法及装置
KR102418856B1 (ko) * 2017-11-02 2022-07-07 삼성전자주식회사 데이터 저장 장치
CN108762989B (zh) * 2018-06-05 2021-08-31 郑州云海信息技术有限公司 固态硬盘的数据存储方法、装置、设备及可读存储介质
CN109086222B (zh) * 2018-07-24 2023-08-25 浪潮电子信息产业股份有限公司 固态硬盘的数据恢复方法以及固态硬盘
CN109597773B (zh) * 2018-12-10 2024-01-23 浪潮(北京)电子信息产业有限公司 一种ssd及其数据掉电保护方法、系统、装置
CN110658999B (zh) * 2019-09-26 2022-07-22 苏州浪潮智能科技有限公司 一种信息更新方法、装置、设备及计算机可读存储介质
CN111913835A (zh) * 2020-07-30 2020-11-10 深圳忆联信息系统有限公司 基于交叉映射的数据多备份存储方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1831786A (zh) * 2005-12-14 2006-09-13 兆日科技(深圳)有限公司 闪速存储器数据完整性保护方法
CN101065788A (zh) * 2004-09-24 2007-10-31 伊特伦公司 使用闪速存储器存储计量数据的方法
CN101251826A (zh) * 2007-02-27 2008-08-27 深圳市同洲电子股份有限公司 闪速存储器、用于闪速存储器的数据管理方法及设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002358248A (ja) * 2001-06-04 2002-12-13 Pioneer Electronic Corp データ記録装置およびデータ消去装置
JP4759304B2 (ja) * 2005-04-07 2011-08-31 オリンパス株式会社 情報表示システム
JP4481338B2 (ja) * 2008-03-28 2010-06-16 株式会社日立製作所 バックアップシステム、ストレージ装置及びデータのバックアップ方法
CN101782875B (zh) * 2010-01-29 2012-01-04 成都市华为赛门铁克科技有限公司 存储设备和数据存储方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101065788A (zh) * 2004-09-24 2007-10-31 伊特伦公司 使用闪速存储器存储计量数据的方法
CN1831786A (zh) * 2005-12-14 2006-09-13 兆日科技(深圳)有限公司 闪速存储器数据完整性保护方法
CN101251826A (zh) * 2007-02-27 2008-08-27 深圳市同洲电子股份有限公司 闪速存储器、用于闪速存储器的数据管理方法及设备

Also Published As

Publication number Publication date
WO2011091761A1 (zh) 2011-08-04
CN101782875A (zh) 2010-07-21

Similar Documents

Publication Publication Date Title
CN101782875B (zh) 存储设备和数据存储方法
CN102081577B (zh) 对Flash存储器的数据存储结构进行数据操作的方法
US10275310B2 (en) Updating exclusive-or parity data
US10289408B2 (en) Managing wear of system areas of storage devices
CN103678177B (zh) 固态硬盘装置
CN101963891A (zh) 数据存储处理方法与装置、固态硬盘系统与数据处理系统
CN104050056A (zh) 多存储介质设备的文件系统备份
US20180074708A1 (en) Trim management in solid state drives
KR20150017672A (ko) 톤 라이트 완화
CN102096561B (zh) 分层数据存储处理方法、装置以及存储设备
CN102024044A (zh) 分布式文件系统
CN103019623B (zh) 存储盘处理方法及装置
US9772782B2 (en) Non-volatile complement data cache
CN107850984A (zh) 使用通过电力丢失数据保护技术存储的写入数据来进行恢复
CN109144899A (zh) 用于管理表恢复的方法
US11803222B2 (en) Systems and methods for managing reduced power failure energy requirements on a solid state drive
US20060259812A1 (en) Data protection method
US20070043968A1 (en) Disk array rebuild disruption resumption handling method and system
KR101627322B1 (ko) 비-휘발성 버퍼를 이용한 데이터 저장 장치 및 방법
CN100492323C (zh) 对缓存内容进行保护的方法和装置以及缓存控制器
CN111813340A (zh) 基于固态硬盘的指令响应方法、系统、装置及电子设备
US11847337B2 (en) Data parking for ZNS devices
KR20090094594A (ko) 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치
US11687263B2 (en) Full die recovery in ZNS SSD
CN103605587A (zh) 一种磁带库数据备份归档方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

Free format text: FORMER NAME: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee after: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee before: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20220907

Address after: No. 1899 Xiyuan Avenue, high tech Zone (West District), Chengdu, Sichuan 610041

Patentee after: Chengdu Huawei Technologies Co.,Ltd.

Address before: 611731 Qingshui River District, Chengdu hi tech Zone, Sichuan, China

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

TR01 Transfer of patent right