Regaining redundancy in distributed raid arrays using unallocated capacity
First Claim
1. A computer-implemented method for regaining redundancy in storage arrays, the method comprising:
- monitoring a Redundant Array of Independent Disks (RAID) array to determine whether one or more redundancy units are at a critical level, wherein a redundancy unit is at a critical level when an additional drive failure will result in loss of data from the redundancy unit, and wherein each redundancy unit has multiple data stripes and one or more parity stripes;
identifying, in response to determining that a particular redundancy unit is critical, available regions in the RAID array which are not allocated to user data;
determining, for the particular redundancy unit, an available region which is in a drive of the RAID array which does not contain any existing data of the particular redundancy unit; and
storing a critical stripe in the available region, wherein the critical stripe contains sufficient information to rebuild the particular redundancy unit in case of further drive failure,wherein determining, for the particular redundancy unit, the available region which is in the drive of the RAID array which does not contain any existing data of the particular redundancy unit comprises;
determining a drive in the RAID array that has a lowest number of critical stripes; and
determining an available region in the drive having the lowest number of critical stripes.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are provided for spare capacity usage for critical redundancy in storage arrays. The method may include monitoring a Redundant Array of Independent Disks (RAID) array to determine whether one or more redundancy units are at a critical level. A redundancy unit may be in a critical level when an additional drive failure will result in loss of data from the redundancy unit. The method may further include identifying available regions in the RAID array which are not allocated to user data in response to determining that a particular redundancy unit is critical. The method may further include determining an available region for the particular redundancy unit, where the available region is in a drive of the RAID array that does not contain data of the particular redundancy unit. The method may further include storing a critical stripe in the available region.
14 Citations
18 Claims
-
1. A computer-implemented method for regaining redundancy in storage arrays, the method comprising:
-
monitoring a Redundant Array of Independent Disks (RAID) array to determine whether one or more redundancy units are at a critical level, wherein a redundancy unit is at a critical level when an additional drive failure will result in loss of data from the redundancy unit, and wherein each redundancy unit has multiple data stripes and one or more parity stripes; identifying, in response to determining that a particular redundancy unit is critical, available regions in the RAID array which are not allocated to user data; determining, for the particular redundancy unit, an available region which is in a drive of the RAID array which does not contain any existing data of the particular redundancy unit; and storing a critical stripe in the available region, wherein the critical stripe contains sufficient information to rebuild the particular redundancy unit in case of further drive failure, wherein determining, for the particular redundancy unit, the available region which is in the drive of the RAID array which does not contain any existing data of the particular redundancy unit comprises; determining a drive in the RAID array that has a lowest number of critical stripes; and determining an available region in the drive having the lowest number of critical stripes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for regaining redundancy in storage arrays, including an array controller having a processor and a memory configured to provide computer program instructions to the processor to execute the function of components of the array controller, including:
-
a critical level monitoring component for monitoring a Redundant Array of Independent Disks (RAID) array to determine if a failure of a drive in the array causes one or more redundancy units to enter a critical level, wherein a critical level is when a further failure will result in loss of data from the redundancy unit, and wherein a redundancy unit has multiple data stripes and one or more parity stripes; a space determining component for identifying available regions in the RAID array which are not allocated to user data; a region selection component for determining for each critical redundancy unit, an available region which is in a drive of the RAID array which does not contain any existing data of the redundancy unit, wherein the region selection component is further configured to determine an available region which is in a drive having a lowest number of critical stripes; and a critical stripe component for storing a critical stripe in the available region, wherein the critical stripe contains sufficient information to rebuild the redundancy unit in case of further drive failure. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A computer program product for regaining redundancy in storage arrays, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising:
-
monitoring a Redundant Array of Independent Disks (RAID) array to determine whether one or more redundancy units are at a critical level, wherein a redundancy unit is at a critical level when an additional drive failure will result in loss of data from the redundancy unit, and wherein each redundancy unit has multiple data stripes and one or more parity stripes; identifying, in response to determining that a particular redundancy unit is critical, available regions in the RAID array which are not allocated to user data; determining, for the particular redundancy unit, an available region which is in a drive of the RAID array which does not contain any existing data of the particular redundancy unit; and storing a critical stripe in the available region, wherein the critical stripe contains sufficient information to rebuild the particular redundancy unit in case of further drive failure, wherein determining, for the particular redundancy unit, the available region which is in the drive of the RAID array which does not contain any existing data of the particular redundancy unit comprises; determining a drive in the RAID array that has a lowest number of critical stripes; and determining an available region in the drive having the lowest number of critical stripes.
-
Specification