Using spare disk drives to overprovision raid groups
First Claim
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, andwherein 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.
9 Assignments
0 Petitions
Accused Products
Abstract
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.
23 Citations
15 Claims
-
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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A data storage system, comprising control circuitry that includes a set of processing units coupled to memory, the control circuitry constructed and arranged to:
-
operate a RAID (Redundant Array of Independent Disks) group in the data storage system, the RAID group including multiple disk drives arranged to provide at least one of data mirroring and data parity; copy segments of data from a set of regions in the disk drives to respective spare regions in a spare disk drive, the set of regions in the disk drives of the RAID group becoming unused regions and the spare regions in the spare disk drive effecting an overprovisioning of storage for the RAID group; and upon a failure of one of the disk drives in the RAID group, rebuild data of the failed disk drive based on (i) the segments of data and (ii) data from a set of still-functioning disk drives in the RAID group, wherein the RAID group is an SSD (Solid State Drive) RAID group composed of SSDs, and wherein the control circuitry is further constructed and arranged to mark each of the unused regions on each of the SSDs as containing invalid data, 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 the control circuitry constructed and arranged to copy the segments of data from the set of regions of the disk drives of the instant RAID group to respective spare regions is further constructed and arranged to copy all segments of data for the instant RAID group to the instant spare disk drive, and wherein the control circuitry is further constructed and arranged to; for each of the spare regions in the spare disk drive, copy 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 spare disk drive; and rebuild a set of data into the unused regions of the spare disk drive, the set of data including data previously stored in the failed disk drive. - View Dependent Claims (11)
-
-
12. A computer program product including a set of non-transitory, computer-readable media having instructions which, when executed by control circuitry of a data storage system, cause the control circuitry to perform a method of managing spare disk drives in a data storage system, the method comprising:
-
operating a RAID (Redundant Array of Independent Disks) group in the data storage system, the RAID group including multiple disk drives arranged to provide at least one of data mirroring and data parity; copying segments of data from a set of regions in the disk drives to respective spare regions in a spare disk drive, the set of regions in the disk drives of the RAID group becoming unused regions and the spare regions in the spare disk drive effecting an overprovisioning of storage for the RAID group; and upon a failure of one of the disk drives in the RAID group, rebuilding data of the failed disk drive based on (i) the segments of data and (ii) data from a set of still-functioning disk drives in the RAID group, wherein the RAID group 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, 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. - View Dependent Claims (13, 14, 15)
-
Specification