Offloading raid update operations to disk controllers
US-9507535-B2 · Nov 29, 2016 · US
US9921912B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9921912-B1 |
| Application number | US-201514870187-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 30, 2015 |
| Priority date | Sep 30, 2015 |
| Publication date | Mar 20, 2018 |
| Grant date | Mar 20, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A technique for managing spare disk drives in a data storage system includes transferring segments of data from disk drives of an operating RAID group to spare regions on a set of spare disk drives to create unused space in the disk drives of the RAID group, thus using the spare regions to overprovision storage in the RAID group. Upon a failure of one of the disk drives in the RAID group, data of the failing disk drive are rebuilt based on the segments of data as well as on data from still-functioning disk drives in the RAID group. Thus, the spare disk drives act not only to overprovision storage for the RAID group prior to disk drive failure, but also to fulfill their role as spares in the event of a disk drive failure.
Opening claim text (preview).
What is claimed is: 1. A method of managing spare disk drives in a data storage system, the method comprising: operating multiple RAID (Redundant Array of Independent Disks) groups in the data storage system, each RAID group including multiple disk drives arranged to provide at least one of data mirroring and data parity; for each of the RAID groups, copying segments of data from a set of regions of the disk drives in that RAID group to respective spare regions in a set of spare disk drives, the set of regions in the disk drives in that RAID group becoming unused regions and the spare regions in the set of spare disk drives effecting an overprovisioning of storage for that RAID group; and upon a failure of one of the disk drives in one of the RAID groups, rebuilding data of the failed disk drive based on (i) the segments of data for that RAID group and (ii) data from a set of still-functioning disk drives in that RAID group, wherein the multiple RAID groups include a particular RAID group, and wherein the method further comprises marking, by a RAID controller, the unused regions in the particular RAID group as invalid, wherein a number of segments are copied from the set of regions to the set of spare regions for each RAID group, wherein each RAID group includes a number of disk drives, and wherein the number of segments in each RAID group copied from the set of regions to the set of spare regions is an integer multiple of the number of disk drives in the RAID group, wherein each segment of data includes an integer number of RAID strips, and wherein no two segments of data on different disk drives of a RAID group include RAID strips belonging to the same RAID stripe, wherein, the RAID groups include an instant RAID group, wherein the set of spare disk drives includes an instant spare disk drive, and wherein copying the segments of data from the set of regions of the disk drives of the instant RAID group to respective spare regions includes copying all segments of data for the instant RAID group to the instant spare disk drive, and wherein the method further comprises: for each of the spare regions in the instant spare disk drive, except any spare regions to which any segments of data were copied from the failing disk drive, copying data from that spare region to a respective unused region in the instant RAID group, the spare regions from which data are copied becoming unused regions in the instant spare disk drive; and rebuilding a set of data into the unused regions of the instant spare disk drive, the set of data including data previously stored in the failed disk drive. 2. The method of claim 1 , further comprising, after copying segments of data, remapping access requests directed to the set of unused regions to the respective spare regions on the set of spare disk drives, wherein remapping an access request includes transforming an initial disk address to a target disk address by applying a mathematical operation to the initial disk address. 3. The method of claim 1 , wherein a number of segments are copied from the set of regions to the set of spare regions for each RAID group, wherein each RAID group includes a number of disk drives, and wherein the number of segments in each RAID group copied from the set of regions to the set of spare regions is an integer multiple of the number of disk drives in the RAID group, wherein each segment of data includes an integer number of RAID strips, and wherein no two segments of data on different disk drives of a RAID group include RAID strips belonging to the same RAID stripe, and wherein at least one of the RAID groups is an SSD (Solid State Drive) RAID group composed of SSDs, and wherein the method further comprises marking each of the unused regions on each of the SSDs as containing invalid data. 4. The method of claim 1 , wherein, after rebuilding the set of data into the unused regions of the instant spare disk drive, the instant spare disk drive becomes part of the instant RAID group, and wherein the method further comprises: providing a second spare disk drive; and copying segments of data from a set of regions of the disk drives of the instant RAID group to respective spare regions in the second spare disk drive, the set of regions in the disk drives of the instant RAID group becoming unused regions and the spare regions in the second spare disk drive effecting an overprovisioning of storage for the instant RAID group. 5. The method of claim 1 , wherein a number of segments are copied from the set of regions to the set of spare regions for each RAID group, wherein each RAID group includes a number of disk drives, and wherein the number of segments in each RAID group copied from the set of regions to the set of spare regions is an integer multiple of the number of disk drives in the RAID group, wherein each segment of data includes an integer number of RAID strips, and wherein no two segments of data on different disk drives of a RAID group include RAID strips belonging to the same RAID stripe, wherein, the RAID groups include an instant RAID group, wherein the set of spare disk drives includes an instant spare disk drive, and wherein copying the segments of data from the set of regions of the disk drives of the instant RAID group to respective spare regions includes copying all segments of data for the instant RAID group to the instant spare disk drive, and wherein the method further comprises: for each of the spare regions in the instant spare disk drive, copying data from that spare region to a respective unused region on another disk drive in the data storage system, the spare regions from which data are copied becoming unused regions in the instant spare disk drive; and rebuilding a set of data into the unused regions of the instant spare disk drive, the set of data including data previously stored in the failed disk drive. 6. The method of claim 1 , wherein a number of segments are copied from the set of regions to the set of spare regions for each RAID group, wherein each RAID group includes a number of disk drives, and wherein the number of segments in each RAID group copied from the set of regions to the set of spare regions is an integer multiple of the number of disk drives in the RAID group, wherein each segment of data includes an integer number of RAID strips, and wherein no two segments of data on different disk drives of a RAID group include RAID strips belonging to the same RAID stripe, wherein, the RAID groups include an instant RAID group, wherein the set of spare disk drives includes an instant spare disk drive, and wherein copying the segments of data from the set of regions of the disk drives of the instant RAID group to respective spare regions includes copying all segments of data for the instant RAID group to the instant spare disk drive, and wherein the method further comprises rebuilding a set of data into the unused regions in the disk drives of the instant RAID group, except for the failing disk drive, the set of data including data previously stored in the failed disk drive. 7. The method of claim 6 , further comprising providing a new spare disk drive and copying the set of data to the new spare disk drive, such that the unused regions into which the set of data were rebuilt again become unused. 8. The method of claim 1 , wherein a number of segments are copied from the set of regions to the set of spare regions for each RAID group, wherein each RAID group includes a number of disk drives, and wherein the number of segments in each RAID group copied from the set of regions to the set of spare regions is an integer multiple of the number of disk drives in the RAID group, wherein each segment of data includes an integer number of RAID strips, and where
Rebuilding, e.g. when physically replacing a failing disk · CPC title
Non-volatile semiconductor memory arrays · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
by allocating resources to storage systems · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.