KR20150013973A - Raid storage device and method for operating thereof - Google Patents
Raid storage device and method for operating thereof Download PDFInfo
- Publication number
- KR20150013973A KR20150013973A KR1020130087492A KR20130087492A KR20150013973A KR 20150013973 A KR20150013973 A KR 20150013973A KR 1020130087492 A KR1020130087492 A KR 1020130087492A KR 20130087492 A KR20130087492 A KR 20130087492A KR 20150013973 A KR20150013973 A KR 20150013973A
- Authority
- KR
- South Korea
- Prior art keywords
- storage device
- data
- volatile memory
- storage devices
- based storage
- Prior art date
Links
Images
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/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
- 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
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1028—Distributed, i.e. distributed RAID systems with parity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
A method of operating a RAID storage device and a RAID storage device is provided. By storing the parity of data in a plurality of non-volatile memory-based storage devices in a differential manner, the reliability of the data of the RAID storage device can be ensured and the overhead associated with storage device replacement can be reduced.
Description
The following description relates to a RAID storage device, and more particularly to the management of parity in a RAID storage device.
Redundant array of independent disks (RAID) storage is a storage device that provides a plurality of individual storage devices as a single storage device. The purpose of a RAID storage device is to prevent data loss and improve access speed. The prevention of data loss is to recover data in real time when an error occurs in one storage device among a plurality of storage devices included in the RAID storage device. The improvement of the access speed is to improve the data read speed and data write speed by simultaneously operating a plurality of storage devices at the time of inputting and outputting data.
There are six known RAID levels: RAID 0, RAID 1,
Of the above levels,
RAID 5 uniformly distributes not only data but also parity among a plurality of storage devices included in the RAID storage device. The distribution of parity reduces the bottleneck compared to
The plurality of storage devices included in the RAID storage device may be non-volatile memory based storage devices. In particular, when a flash memory-based storage device or SSD is used as a storage device included in a RAID storage device, advantages such as fast data reading and data writing can be provided.
Non-volatile memory-based storage devices may have a limited lifetime, particularly in the writing of data. The non-volatile memory includes a plurality of blocks, and the number of times of writing or erasing for each block can be limited. When the number of write or erase operations for a particular block reaches a predetermined threshold value, the block can no longer be used. Therefore, the lifetime of the nonvolatile memory can also be limited. The limited lifetime of the non-volatile memory can cause problems in terms of ensuring the reliability of data in the RAID storage device. In addition, the limited lifetime of the non-volatile memory may increase the overhead in the replacement of the storage device included in the RAID storage device.
One embodiment may provide a method of operating a RAID storage device and a RAID storage device that stores parity of data in a plurality of non-volatile memory-based storage devices in a differential manner.
One embodiment includes a RAID storage device that includes a controller for storing parity of data in a plurality of non-volatile memory-based storage devices differentially and receiving a signal indicating that each of the storage devices has a wear- And a method of operating the RAID storage device.
A storage system, comprising: a plurality of non-volatile memory-based storage devices for storing data and storing differently the parity of the data; and a controller for managing the plurality of non-volatile memory- Device is provided.
The number of blocks of the parity stored in each of the plurality of non-volatile memory-based storage devices may be different from each other.
The n-th non-volatile memory-based storage device among the plurality of non-volatile memory-based storage devices may store n * x parity blocks.
The n may be an integer of 1 or more and m or less.
X may be an integer of 1 or more.
M may be the number of the plurality of non-volatile memory-based storage devices.
The controller may distribute the blocks of parity differently to the plurality of nonvolatile memory based storage devices based on a change in the number of storage devices based on the plurality of nonvolatile memory.
Each of the plurality of non-volatile memory based storage devices may include an output unit.
Each of the plurality of non-volatile memory-based storage devices may output a signal through the output when the wear-count is greater than a predetermined value. The controller may receive a signal from the first storage device among the plurality of non-volatile memory-based storage devices to indicate that the wear-count of the first storage device is greater than or equal to a predetermined value.
The controller may transfer the first data and the first parity stored in the first storage device to the second one of the plurality of non-volatile memory-based storage devices.
The controller may receive a read request for a part of the first data from the host of the RAID storage device during the migration.
The control unit may identify a storage device in which the first one of the first storage device and the second storage device is stored.
Read the portion of the first data from the identified storage device, and transfer the portion of the read first data to the host.
The controller may receive a write request for a part of the first data from the host of the RAID storage device during the transfer.
The control unit may write the part of the first data to the second storage device.
The controller may perform the transfer when the RAID storage device is idle.
The second storage device may be a non-volatile memory-based storage device having the lowest ware-count among the plurality of non-volatile memory-based storage devices.
In another aspect, there is provided a method of managing a plurality of non-volatile memory-based storage devices, the method comprising: storing a plurality of non-volatile memory-based storage devices; storing the data in a differential manner; A method of operating a RAID storage device is provided.
The method of operating the RAID storage device may further include the steps of distributing the blocks of parity differently to the plurality of nonvolatile memory based storage devices based on a change in the number of storage devices based on the plurality of nonvolatile memory Step < / RTI >
Each of the plurality of non-volatile memory based storage devices may include an output unit.
Each of the plurality of non-volatile memory-based storage devices may output a signal through the output when the wear-count is greater than a predetermined value.
The method of operating the RAID storage device includes receiving a signal from the first storage device of the plurality of non-volatile memory-based storage devices indicating that the ware-count of the first storage device is equal to or greater than a predetermined value As shown in FIG.
The method of operating the RAID storage device may further include the step of transferring the first data and the first parity stored in the first storage device to the second storage device of the plurality of nonvolatile memory based storage devices can do.
Wherein the transferring step comprises the steps of: the controller receiving a read request for a portion of the first data from a host of the RAID storage device; and the controller acquiring the first data of the first storage device and the second storage device Identifying the storage device in which the portion of the first data is stored, the control portion reading the portion of the first data from the identified storage device, As shown in FIG.
Wherein the transferring step comprises the steps of the controller receiving a write request for a portion of the first data from the host of the RAID storage device and the controller writing the portion of the first data to the second storage device Step < / RTI >
There is provided a method of operating a RAID storage device and a RAID storage device capable of increasing the reliability of data stored in storage devices by storing parity of data in a plurality of nonvolatile memory-based storage devices.
By receiving a signal indicating that the wear-count of each of the plurality of non-volatile memory-based storage devices is greater than or equal to a predetermined value, data of one storage device can be transferred to another storage device before each of the storage devices reaches the end of its life A RAID storage device and a method of operating a RAID storage device capable of reducing the overhead associated with replacement of a storage device are provided.
1 illustrates a RAID storage device according to one embodiment.
FIG. 2 illustrates a method in which parity of data is stored differently in a plurality of non-volatile memory-based storage devices according to an embodiment.
FIG. 3 illustrates a non-volatile memory based storage device including an output according to an example.
4 is a flowchart illustrating a method of operating a RAID storage device according to an embodiment.
5 is a flowchart illustrating a step in which a controller according to an embodiment differentially distributes data parities to a plurality of nonvolatile memory-based storage devices.
FIG. 6 illustrates a method of transferring data and parity of a first storage device among non-volatile memory-based storage devices to a second storage device according to an exemplary embodiment of the present invention.
FIG. 7 illustrates a method of reading requested data from a RAID storage device by a read request of data from a host according to an example.
FIG. 8 illustrates a method of writing a requested data to a second storage device by a RAID storage device according to an exemplary embodiment of the present invention.
In the following, embodiments will be described in detail with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.
Various modifications may be made to the embodiments and may have various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the description. It is to be understood, however, that the intention is not to limit the embodiments to the embodiments, but to include all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.
The terms used in the examples are used only to illustrate specific embodiments and are not intended to limit the embodiments. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this embodiment belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.
In the following description of the present invention with reference to the accompanying drawings, the same components are denoted by the same reference numerals regardless of the reference numerals, and redundant explanations thereof will be omitted. In the following description of the embodiments, a detailed description of related arts will be omitted if it is determined that the gist of the embodiments may be unnecessarily blurred.
1 shows a RAID storage device according to one embodiment.
The
The
The
The
Each of the plurality of nonvolatile memory-based
In Figure 1, the number of non-volatile memory-based
The
As the parity blocks of data are differentially distributed and stored in each of the non-volatile memory based
The
The
The plurality of non-volatile memory-based
If the plurality of non-volatile memory-based
For example, when the
When writing of data occurs in the
FIG. 2 illustrates a method in which parity of data is stored differently in a plurality of non-volatile memory-based storage devices according to an embodiment.
The
1, the
m may be the number of
An n-th non-volatile memory-based storage device among the plurality of non-volatile memory-based
For example, as shown in FIG. 2, when the value of m is 4, the plurality of nonvolatile memory-based
3 illustrates a non-volatile memory based storage device including an output unit according to an example.
Each of the non-volatile memory based
The non-volatile memory based
The
As the wear-count value of the non-volatile memory based
The signal output by the
The signal output by the
By confirming the signal output of the
4 illustrates a method of operating a RAID storage device according to an embodiment.
As described above with reference to FIG. 1, at
In
By performing
The technical contents described with reference to Figs. 1 to 3 can be applied as it is, and a detailed description will be omitted below.
FIG. 5 illustrates a step in which a controller according to an embodiment differentially distributes data parities to a plurality of non-volatile memory-based storage devices.
The method of operating the RAID storage device described above in FIG. 4 may further include
In
The technical contents described above with reference to Figs. 1 to 4 can be applied as they are, so that a more detailed description will be omitted below.
FIG. 6 illustrates a method of transferring data and parity of a first storage device among non-volatile memory-based storage devices to a second storage device according to an exemplary embodiment of the present invention.
The
In
In
In step 640, the
The transfer in step 640 may be performed through the respective channels of the
The method of operating the RAID storage device described above with reference to FIG. 4 may further include the
The
Through the step 640, the
The
The
The
When the transfer of step 640 is interrupted, the
For example, during the previous progress of step 640, the migration of step 640 may be aborted by releasing the idle state of the
Migration of data may be performed only in the idle state, so that transfer of data may not interfere with data processing of the
The technical contents described above with reference to Figs. 1 to 5 may be applied as they are, so that a more detailed description will be omitted below.
FIG. 7 illustrates a method of reading requested data from a RAID storage device by a read request of data from a host according to an example.
Step 640 described above in FIG. 6 may further include
The
In
If the
In
In
That is, when the
The technical contents described above with reference to Figs. 1 to 6 can be applied as they are, so that a more detailed description will be omitted below.
FIG. 8 illustrates a method of writing a requested data to a second storage device by a RAID storage device according to an exemplary embodiment of the present invention.
Step 640 described above in FIG. 6 may further include
In
The
In
In other words, when the
100: RAID storage device
110: Host
120: buffer
130:
140: Multiple non-volatile memory based storage devices
210: Parity
310: Non-volatile memory based storage device
320:
610: First storage device
620: Second storage device
Claims (16)
A plurality of non-volatile memory-based storage devices for storing data and differentially storing parity of the data; And
And a controller for managing the plurality of nonvolatile memory-based storage devices
Lt; / RTI >
Wherein the number of blocks of the parity stored in each of the plurality of non-volatile memory-based storage devices is different from each other.
The n-th non-volatile memory-based storage device of the plurality of non-volatile memory-based storage devices stores n * x blocks of parity,
Wherein n is an integer of 1 or more and m or less,
X is an integer of 1 or more,
Wherein m is a number of the plurality of non-volatile memory-based storage devices.
Wherein the controller distributes the blocks of the parity differentially to the plurality of non-volatile memory-based storage devices based on a change in the number of storage devices based on the plurality of non-volatile memory-based storage devices.
Wherein each of the plurality of non-volatile memory-based storage devices includes an output,
Wherein each of the plurality of non-volatile memory-based storage devices outputs a signal via the output when the wear-count is greater than or equal to a predetermined value.
Wherein the control unit receives a signal indicating that the wear-count of the first storage device is greater than or equal to a predetermined value from the first storage device among the plurality of non-volatile memory-based storage devices, Data and a first parity to a second one of the plurality of non-volatile memory-based storage devices.
Wherein the control unit receives a read request for a part of the first data from the host of the RAID storage device during the transfer, and when the part of the first data of the first storage device and the second storage device is stored in the storage device Reads the portion of the first data from the identified storage device, and transmits the portion of the read first data to the host.
Wherein the controller writes the portion of the first data to the second storage device upon receiving a write request for a portion of the first data from the host of the RAID storage device during the migration.
Wherein the controller performs the transfer when the RAID storage device is idle.
Wherein the second storage device is a nonvolatile memory based storage device having the lowest ware-count among the plurality of non-volatile memory-based storage devices.
Storing a plurality of nonvolatile memory based storage devices and storing the data parity differentially; And
The control unit manages the plurality of non-volatile memory-based storage devices
Gt; a < / RTI > RAID storage device.
Volatile memory based storage devices based on a change in the number of storage devices based on the plurality of non-volatile memory devices
Further comprising the step of:
Wherein each of the plurality of non-volatile memory-based storage devices includes an output,
Wherein each of the plurality of non-volatile memory-based storage devices outputs a signal via the output when the wear-count is greater than or equal to a predetermined value.
Receiving a signal from the first one of the plurality of non-volatile memory-based storage devices indicating that the ware-count of the first storage device is equal to or greater than a predetermined value; And
Wherein the control unit transfers the first data and the first parity stored in the first storage unit to the second one of the plurality of nonvolatile memory based storage units
Further comprising the step of:
Wherein the transferring step comprises:
The controller receiving a read request for a portion of the first data from a host of the RAID storage device;
The control unit identifying a storage device in which the portion of the first data is stored, the first storage device and the second storage device;
The control unit reading the portion of the first data from the identified storage device; And
The control unit transmitting the part of the read first data to the host
Lt; / RTI >
Wherein the transferring step comprises:
The controller receiving a write request for a portion of the first data from a host of the RAID storage device; And
The control unit writing the part of the first data to the second storage device
Gt; a < / RTI > RAID storage device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130087492A KR20150013973A (en) | 2013-07-24 | 2013-07-24 | Raid storage device and method for operating thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130087492A KR20150013973A (en) | 2013-07-24 | 2013-07-24 | Raid storage device and method for operating thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150013973A true KR20150013973A (en) | 2015-02-06 |
Family
ID=52570942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130087492A KR20150013973A (en) | 2013-07-24 | 2013-07-24 | Raid storage device and method for operating thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20150013973A (en) |
-
2013
- 2013-07-24 KR KR1020130087492A patent/KR20150013973A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11068170B2 (en) | Multi-tier scheme for logical storage management | |
CN107346290B (en) | Replaying partition logical to physical data address translation tables using parallelized log lists | |
CN106445724B (en) | Storing parity data separately from protected data | |
US9483404B2 (en) | Write admittance policy for a memory cache | |
US9177638B2 (en) | Methods and devices for avoiding lower page corruption in data storage devices | |
JP5759623B2 (en) | Apparatus including memory system controller and associated method | |
US8015371B2 (en) | Storage apparatus and method of managing data storage area | |
US8806111B2 (en) | Apparatus, system, and method for backing data of a non-volatile storage device using a backing store | |
US8949507B2 (en) | Method for performing block management, and associated memory device and controller thereof | |
US10275310B2 (en) | Updating exclusive-or parity data | |
US20160179403A1 (en) | Storage controller, storage device, storage system, and semiconductor storage device | |
US20160210060A1 (en) | Dynamic resource allocation within storage devices | |
US20080195833A1 (en) | Systems, methods and computer program products for operating a data processing system in which a file system's unit of memory allocation is coordinated with a storage system's read/write operation unit | |
US9891989B2 (en) | Storage apparatus, storage system, and storage apparatus control method for updating stored data stored in nonvolatile memory | |
AU2015258208A1 (en) | Resource allocation and deallocation for power management in devices | |
KR20090019593A (en) | Ecc control circuit and multi channel memory system icluding the same | |
US20190243578A1 (en) | Memory buffer management for solid state drives | |
KR20210000877A (en) | Apparatus and method for improving input/output throughput of memory system | |
CN114746834A (en) | Partition append command scheduling based on partition status | |
KR101070511B1 (en) | Solid state drive controller and method for operating of the solid state drive controller | |
US8533549B2 (en) | Memory system and computer system | |
US9286176B1 (en) | Selective skipping of blocks in an SSD | |
US20160306569A1 (en) | Memory system | |
US20100325373A1 (en) | Duplexing Apparatus and Duplexing Control Method | |
JP4430092B2 (en) | RAID device, RAID device controller, and RAID device write-back control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |