CN103092765B - 固态存储系统、装置及数据写入方法 - Google Patents
固态存储系统、装置及数据写入方法 Download PDFInfo
- Publication number
- CN103092765B CN103092765B CN201210591581.1A CN201210591581A CN103092765B CN 103092765 B CN103092765 B CN 103092765B CN 201210591581 A CN201210591581 A CN 201210591581A CN 103092765 B CN103092765 B CN 103092765B
- Authority
- CN
- China
- Prior art keywords
- data
- lpage
- logical
- page
- logical page
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2069—Management of state, configuration or failover
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/805—Real-time
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明适用于存储技术领域,提供了一种固态存储系统的数据写入方法,所述固态存储系统包括若干逻辑盘,所述方法包括:从每个所述逻辑盘分配至少一空闲逻辑块,用于接收并行数据,每个所述逻辑块包括若干逻辑页;将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息;当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。本发明还提供一种实现上述方法的固态存储系统。借此,本发明在一个逻辑盘出错的情况下可以恢复该盘数据,且不需要增加额外的成本。
Description
技术领域
本发明涉及储存技术领域,尤其涉及一种固态存储系统、装置及数据写入方法。
背景技术
MLC(Multi-Level Cell,多层单元)Nand Flash相对SLC(Single-Level Cell,单层单元)Nand flash有更高的存储密度,在固态硬盘领域有着越来越广泛的应用。MLC Nand Flash一个存储单元(memory cell)可以存储2bits的信息,这2bits分属于两个不同的page,这样的一组page叫couple pages,存低位比特的叫low page,存高位比特的叫up page,它执行写有以下两个约束:1)Low page必须在up page之前被写入;2)Up page在写入过程中被打断,比如异常掉电,uppage的信息会丢失,而且它对应的low page的信息也可能会丢失,而low page不会影响其up page。
现有技术通过额外提供备用电源或超级电容,当主电源断电时,由备用电源供电保证当前正在写的数据成功写入到Nand Flash中。但这种解决方式需要提供外部的硬件支持,增加了成本和硬件复杂性,
综上可知,现有的固态存储数据的写入方法,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种固态存储系统、装置及数据写入方法,在不增加额外硬件成本的前提下恢复被破坏的数据。
为了实现上述目的,本发明提供一种固态存储系统的数据写入方法,所述固态存储系统包括若干逻辑盘,所述方法包括:
从每个所述逻辑盘分配至少一空闲逻辑块,用于接收并行数据,每个所述逻辑块包括若干逻辑页;
将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息;
当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
根据本发明的数据写入方法,所述逻辑块的一个存储单元包括相邻的两个所述逻辑页,其中一个逻辑页用于存储低位数据,另一个逻辑页用于存储高位数据。
根据本发明的数据写入方法,所述当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据步骤包括:
当所述高位数据的写入将对应的低位数据破坏时,通过所述低位数据所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
根据本发明的数据写入方法,所述方法还包括:
若接收并行数据的各个逻辑块中存在所述用于存储高位数据且页号相同的逻辑页,则选择其中的一个所述逻辑页接收数据写入,并阻塞其它页号相同的所述逻辑页的写入请求。
本发明还提供一种固态存储系统,包括若干逻辑盘,所述存储系统还包括:
分配模块,用于从每个所述逻辑盘分配至少一空闲逻辑块,所述空闲逻辑块用于接收并行数据,每个所述逻辑块包括若干逻辑页;
设置模块,用于将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息;
恢复模块,用于当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
根据本发明的固态存储系统,所述逻辑块的一个存储单元包括相邻的两个所述逻辑页,其中一个逻辑页用于存储低位数据,另一个逻辑页用于存储高位数据。
根据本发明的固态存储系统,所述恢复模块进一步用于当所述高位数据的写入将对应的低位数据破坏时,通过所述低位数据所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
根据本发明的固态存储系统,所述系统还包括处理模块,用于所述系统接收并行数据的各个逻辑块中存在所述用于存储高位数据且页号相同的逻辑页时,选择其中的一个所述逻辑页接收数据写入,并阻塞其它页号相同的所述逻辑页的写入请求。
本发明还提供一种包括如上所述系统的存储装置。
本发明通过将固态存储系统中各个逻辑块的页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组可储存一组并行数据,以及该组并行数据的校验信息,当一个逻辑页中的数据被破坏时,系统可通过该逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复被破坏的数据。借此,本发明可在不增加额外硬件成本的前提下恢复被破坏的数据。
附图说明
图1是本发明的固态存储系统的结构示意图;
图2是本发明一实施例的固态硬盘系统的逻辑结构示意图;
图3A是本发明一实施例的第一数据写入状态示意图;
图3B是图3A所示实施例的第二数据写入状态示意图;
图3C是图3A所示实施例的第三数据写入状态示意图;
图4是本发明另一实施例的数据写入状态示意图;
图5是本发明的数据写入方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图1,本发明提供了一种固态存储系统,该固态存储系统100可应用于固态存储装置,比如固态硬盘。该系统100的存储部分包括若干逻辑盘,并且系统100还包括分配模块10、设置模块20及恢复模块30,具体的:
分配模块10,用于从每个所述逻辑盘分配至少一空闲逻辑块,所述空闲逻辑块用于接收并行数据,每个所述逻辑块包括若干逻辑页。每个逻辑盘通常包括空闲逻辑块和非空闲逻辑块,非空闲逻辑块表示已写入数据,空闲逻辑块表示允许写入数据。当收到写入数据命令时,分配模块10自动从逻辑盘中查找空闲的逻辑块,用于数据写入。
设置模块20,用于将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组(RAID stripe),每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息。需要说明的,各个数据的校验信息存储于单独的一个逻辑盘,而不与数据存储在一起,借此,某逻辑盘的数据被破坏时,其校验信息不会一同被破坏,便于后续的数据恢复。
恢复模块30,用于当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。如前所述,对于同时写入的一组并行数据,数据的检验信息与数据分开储存,当逻辑盘中某逻辑页的数据被损坏时,系统100可通过同时写入的其它数据及校验信息计算恢复被损坏的数据。
本发明通过软件计算方式恢复被破坏的数据,其不需要增加额外的硬件,具有较高的实用性。
再参见图2,该实施例中,固态存储系统100包括四个逻辑盘,其中,逻辑盘LU0~LU2用于存储数据,逻辑盘LU3则用于存储数据的检验信息。每个逻辑盘均包括B0和B1两个逻辑块,逻辑块的一个基本存储单元包括相邻的两个逻辑页,比如逻辑页P0(L0)和P1(U0),其中一个逻辑页P0(L0)用于存储低位数据,另一个逻辑页P1(U0)用于存储高位数据。当某逻辑块的高位数据的写入将对应的低位数据破坏时,通过所述低位数据所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。结合图4,逻辑盘LUN1中逻辑块B1的用于存储低位数据的逻辑页P0(L0)被未完成的P1(U0)的写操作破坏,比如在写入P1(U0)时突然断电。再次上电后,系统100可通过逻辑页P0(L0)所在的磁盘阵列组储存的其它数据以及校验信息计算恢复被破坏的数据,借此使固态存储系统100具有数据恢复能力。
优选的是,本发明的固态存储系统100还包括处理模块40,用于接收并行数据的各个逻辑块中存在页号相同的高位数据的逻辑页时,选择其中的一个逻辑页接收数据写入,并阻塞其它页号相同的所述逻辑页的写入请求。需要说明的,上述阻塞处理仅对当前一组写入的数据有效,当下一组并行数据请求写入时,再重复上述判断,确定是写入还是阻塞。具体的实现过程如图3A~图3C所示,对于图3A,一组并行数据写入时,刚好写入到逻辑盘LU0~LU3的存储高位数据的逻辑页P1(U0),由于各盘的逻辑页号相同,所以选择其中的一个逻辑页(图中示出选择的为逻辑盘LU0的逻辑页P1(U0))执行写入,其它相同页号的逻辑页被阻塞写入。图3B和图3C,分别示出了后续的写入过程,且后续的写入速度逐渐恢复到正常写入速度。
本发明还提供一种包括如上所述系统100的固态存储装置,其采用上述阻塞写入的处理方法,可以保证在掉电时不会有相同页号的高位数据被同时破坏,进而确保不会有相同页号的低位数据被破坏,即,保证了每一个磁盘阵列组在系统掉电异常时,最多只有一个数据被破坏,借此可通过磁盘阵列组中未被破坏的数据及校验信息计算恢复被破坏的数据。
参见图5,本发明提供了一种数据写入方法,其可以通过如图1所示的系统100实现,所述固态存储系统包括若干逻辑盘,所述方法包括:
步骤S501,从每个所述逻辑盘分配至少一空闲逻辑块,用于接收并行数据,每个所述逻辑块包括若干逻辑页。
每个逻辑盘通常包括空闲逻辑块和非空闲逻辑块,非空闲逻辑块表示已写入数据,空闲逻辑块表示允许写入数据。当收到写入数据命令时,分配模块10自动从逻辑盘中查找空闲的逻辑块,用于数据写入。进一步的,所述逻辑块的一个存储单元包括相邻的两个所述逻辑页,其中一个逻辑页用于存储低位数据,另一个逻辑页用于存储高位数据。
步骤S502,将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息。
需要说明的,各个数据的校验信息存储于单独的一个逻辑盘,而不与数据存储在一起,借此,某逻辑盘的数据被破坏时,其校验信息不会一同被破坏,便于后续的数据恢复。
步骤S503,当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
如前所述,对于同时写入的一组并行数据,数据的检验信息与数据分开储存,当逻辑盘中某逻辑页的数据被损坏时,系统100可通过同时写入的其它数据及校验信息计算恢复被损坏的数据。具体的,当所述高位数据的写入将对应的低位数据破坏时,通过所述低位数据所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
更好的,若接收并行数据的各个逻辑块中存在用于存储高位数据且页号相同的逻辑页,则选择其中的一个所述逻辑页接收数据写入,并阻塞其它页号相同的所述逻辑页的写入请求。具体的实现过程如图3A~图3C所示,对于图3A,一组并行数据写入时,刚好写入到逻辑盘LU0~LU3的存储高位数据的逻辑页P1(U0),由于各盘的逻辑页号相同,所以选择其中的一个逻辑页(图中示出选择的为逻辑盘LU0的逻辑页P1(U0))执行写入,其它相同页号的逻辑页被阻塞写入。图3B和图3C,分别示出了后续的写入过程,且后续的写入速度逐渐恢复到正常写入速度。采用上述阻塞写入的处理方法,可以保证在掉电时不会有相同页号的高位数据被同时破坏,进而确保不会有相同页号的低位数据被破坏,即,保证了每一个磁盘阵列组在系统掉电异常时,最多只有一个数据被破坏,借此可通过磁盘阵列组中未被破坏的数据及校验信息计算恢复被破坏的数据。
综上所述,本发明通过将固态存储系统中各个逻辑块的页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组可储存一组并行数据,以及该组并行数据的校验信息,当一个逻辑页中的数据被破坏时,系统可通过该逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复被破坏的数据。借此,本发明可在不增加额外硬件成本的前提下恢复被破坏的数据。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (5)
1.一种固态存储系统的数据写入方法,所述固态存储系统包括若干逻辑盘,其特征在于,所述方法包括:
从每个所述逻辑盘分配至少一空闲逻辑块,用于接收并行数据,每个所述逻辑块包括若干逻辑页,所述逻辑块的一个存储单元包括相邻的两个所述逻辑页,其中一个逻辑页用于存储低位数据,另一个逻辑页用于存储高位数据;
将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息;
当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据;
若接收并行数据的各个逻辑块中存在所述用于存储高位数据且页号相同的逻辑页,则选择其中的一个所述逻辑页接收数据写入,并阻塞其它页号相同的所述逻辑页的写入请求。
2.根据权利要求1所述的数据写入方法,其特征在于,所述当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据步骤包括:
当所述高位数据的写入将对应的低位数据破坏时,通过所述低位数据所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
3.一种固态存储系统,包括若干逻辑盘,其特征在于,所述存储系统还包括:
分配模块,用于从每个所述逻辑盘分配至少一空闲逻辑块,所述空闲逻辑块用于接收并行数据,每个所述逻辑块包括若干逻辑页,所述逻辑块的一个存储单元包括相邻的两个所述逻辑页,其中一个逻辑页用于存储低位数据,另一个逻辑页用于存储高位数据;
设置模块,用于将各个所述逻辑块中页号相同的所述逻辑页设为一个磁盘阵列组,每个所述磁盘阵列组用于储存一组并行数据,以及所述并行数据的校验信息;
恢复模块,用于当一个所述逻辑页中的数据被破坏时,通过所述逻辑页所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据;
处理模块,用于所述系统接收并行数据的各个逻辑块中存在所述用于存储高位数据且页号相同的逻辑页时,选择其中的一个所述逻辑页接收数据写入,并阻塞其它页号相同的所述逻辑页的写入请求。
4.根据权利要求3所述的固态存储系统,其特征在于,所述恢复模块进一步用于当所述高位数据的写入将对应的低位数据破坏时,通过所述低位数据所在的磁盘阵列组储存的其它数据以及校验信息计算恢复所述被破坏的数据。
5.一种包括如权利要求3或4所述系统的存储装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210591581.1A CN103092765B (zh) | 2012-12-31 | 2012-12-31 | 固态存储系统、装置及数据写入方法 |
PCT/CN2013/077392 WO2014101375A1 (zh) | 2012-12-31 | 2013-06-18 | 固态存储系统、装置及数据写入方法 |
US14/650,648 US9639441B2 (en) | 2012-12-31 | 2013-06-18 | Solid-state storage system, apparatus and method of writing data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210591581.1A CN103092765B (zh) | 2012-12-31 | 2012-12-31 | 固态存储系统、装置及数据写入方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103092765A CN103092765A (zh) | 2013-05-08 |
CN103092765B true CN103092765B (zh) | 2015-08-05 |
Family
ID=48205365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210591581.1A Active CN103092765B (zh) | 2012-12-31 | 2012-12-31 | 固态存储系统、装置及数据写入方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9639441B2 (zh) |
CN (1) | CN103092765B (zh) |
WO (1) | WO2014101375A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092765B (zh) * | 2012-12-31 | 2015-08-05 | 记忆科技(深圳)有限公司 | 固态存储系统、装置及数据写入方法 |
CN103279402B (zh) * | 2013-05-13 | 2016-08-10 | 记忆科技(深圳)有限公司 | 基于多层单元固态硬盘的数据恢复方法及固态硬盘 |
US10452290B2 (en) * | 2016-12-19 | 2019-10-22 | Pure Storage, Inc. | Block consolidation in a direct-mapped flash storage system |
US11550481B2 (en) | 2016-12-19 | 2023-01-10 | Pure Storage, Inc. | Efficiently writing data in a zoned drive storage system |
JP6777330B2 (ja) * | 2018-12-18 | 2020-10-28 | Necプラットフォームズ株式会社 | ディスクアレイ制御装置、ディスクアレイ装置、ディスクアレイ装置の制御方法及びプログラム |
CN111381769B (zh) * | 2018-12-29 | 2023-11-14 | 深圳市茁壮网络股份有限公司 | 一种分布式数据存储方法及系统 |
CN113342577B (zh) * | 2021-06-24 | 2023-11-03 | 长江存储科技有限责任公司 | 存储设备及其数据恢复方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023815A (zh) * | 2009-09-15 | 2011-04-20 | 格雷戈里·伯德 | 在固态存储器中实现raid |
WO2011116071A2 (en) * | 2010-03-17 | 2011-09-22 | Pliant Technology, Inc. | Mlc self-raid flash data protection scheme |
CN102609370A (zh) * | 2012-02-06 | 2012-07-25 | 记忆科技(深圳)有限公司 | 防止固态硬盘数据丢失的方法及其固态硬盘 |
CN102789422A (zh) * | 2012-06-25 | 2012-11-21 | 记忆科技(深圳)有限公司 | 固态硬盘的数据写入方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6934904B2 (en) * | 2001-04-30 | 2005-08-23 | Sun Microsystems, Inc. | Data integrity error handling in a redundant storage array |
CN100468367C (zh) * | 2003-10-29 | 2009-03-11 | 鸿富锦精密工业(深圳)有限公司 | 固态存储器的安全存储系统及方法 |
US8452929B2 (en) * | 2005-04-21 | 2013-05-28 | Violin Memory Inc. | Method and system for storage of data in non-volatile media |
US7657796B1 (en) * | 2005-09-30 | 2010-02-02 | Symantec Operating Corporation | System and method for distributed storage verification |
CN100356347C (zh) * | 2006-04-29 | 2007-12-19 | 北京飞天诚信科技有限公司 | 闪存的安全写入方法 |
CN100462944C (zh) * | 2007-03-07 | 2009-02-18 | 北京飞天诚信科技有限公司 | 基于非易失性存储器两个以上连续逻辑块的掉电保护方法 |
US7917803B2 (en) | 2008-06-17 | 2011-03-29 | Seagate Technology Llc | Data conflict resolution for solid-state memory devices |
CN102591807B (zh) | 2011-12-30 | 2015-03-11 | 记忆科技(深圳)有限公司 | 一种固态硬盘掉电和写异常处理方法及系统 |
CN103092765B (zh) | 2012-12-31 | 2015-08-05 | 记忆科技(深圳)有限公司 | 固态存储系统、装置及数据写入方法 |
-
2012
- 2012-12-31 CN CN201210591581.1A patent/CN103092765B/zh active Active
-
2013
- 2013-06-18 WO PCT/CN2013/077392 patent/WO2014101375A1/zh active Application Filing
- 2013-06-18 US US14/650,648 patent/US9639441B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023815A (zh) * | 2009-09-15 | 2011-04-20 | 格雷戈里·伯德 | 在固态存储器中实现raid |
WO2011116071A2 (en) * | 2010-03-17 | 2011-09-22 | Pliant Technology, Inc. | Mlc self-raid flash data protection scheme |
CN102609370A (zh) * | 2012-02-06 | 2012-07-25 | 记忆科技(深圳)有限公司 | 防止固态硬盘数据丢失的方法及其固态硬盘 |
CN102789422A (zh) * | 2012-06-25 | 2012-11-21 | 记忆科技(深圳)有限公司 | 固态硬盘的数据写入方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103092765A (zh) | 2013-05-08 |
US9639441B2 (en) | 2017-05-02 |
WO2014101375A1 (zh) | 2014-07-03 |
US20160210210A1 (en) | 2016-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103092765B (zh) | 固态存储系统、装置及数据写入方法 | |
US10275310B2 (en) | Updating exclusive-or parity data | |
CN101876949B (zh) | 数据储存系统与方法 | |
CN101425041B (zh) | 在nand flash存储器上建立fat文件系统的优化方法 | |
US9575844B2 (en) | Mass storage device and method of operating the same to back up data stored in volatile memory | |
US20160179403A1 (en) | Storage controller, storage device, storage system, and semiconductor storage device | |
CN102591748A (zh) | 固态硬盘及其掉电保护方法、系统 | |
CN104571933B (zh) | 具固态储存元件的电子装置及其相关控制方法 | |
CN103513942B (zh) | 独立冗余磁盘阵列的重构方法及装置 | |
CN101552032A (zh) | 用较大容量dram参与闪存介质管理构建高速固态存储盘的方法及装置 | |
US20090327801A1 (en) | Disk array system, disk controller, and method for performing rebuild process | |
CN101923499A (zh) | 执行防电源故障高速缓存而无需原子元数据的技术 | |
KR20080008419A (ko) | 전력 손실에 의한 데이터 손상을 방지하는 플래시 메모리관리 방법 | |
CN103049070A (zh) | 缓存数据的掉电保护方法及计算机设备 | |
CN104461964A (zh) | 一种存储装置 | |
US9582192B2 (en) | Geometry aware block reclamation | |
CN104615381B (zh) | 一种视频监控系统的磁盘冗余阵列 | |
CN106062724A (zh) | 存储器模块上的数据管理 | |
CN103257830A (zh) | 存储单元的访问方法和存储单元 | |
CN102981969A (zh) | 重复数据删除的方法及其固态硬盘 | |
TW201321978A (zh) | 電子系統及其記憶體管理方法 | |
CN102789422B (zh) | 固态硬盘的数据写入方法 | |
CN103678025A (zh) | 一种磁盘阵列中的磁盘故障处理方法 | |
CN102789813B (zh) | 一种控制存储设备内非最低有效位页使用的方法及装置 | |
CN106919339B (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 |