What is claimed is:
1. A method, comprising:
from a set of drives of a storage system, creating a drive subset of (D+P) plus spare sequentially indexed drives for implementation of protection groups that have D data members and P parity members, each of the drives having (D+P) sequentially indexed splits; and
distributing spare capacity across multiple drives by creating a group of spare splits in which each split exhibits both split index and drive index diagonal adjacency such that diagonally adjacent pairs of the spare splits are characterized by both sequential split indices and sequential drive indices relative to each other by relocating selected protection group members to the spare drive such that no split index and no drive contain multiple spare splits.
2. The method of claim 1 comprising creating each of the protection groups using a single split index.
3. The method of claim 2 comprising adding a new drive to the drive subset and relocating selected protection group members characterized by split index and drive index adjacency to splits of the new drive.
4. The method of claim 3 comprising creating a new protection group using splits vacated by relocating the selected protection group members.
5. The method of claim 4 comprising relocating or rebuilding protection group members from a failing or failed one of the drives to the spare splits such that none of the drives contain multiple members of any of the protection groups.
6. The method of claim 5 comprising identifying the protection groups of the splits on the failing or failed drive.
7. The method of claim 6 comprising determining, for each identified protection group, the drives that contain the members of the protection group.
8. The method of claim 7 comprising determining a largest drive index for each identified protection group.
9. The method of claim 8 comprising calculating adjusted spare split indices to which the protection group members from the failing or failed one of the drives are relocated or rebuilt by using the largest drive index to select a split index that is used as the adjusted spare split index for the member of the protection group associated with the largest drive index.
10. An apparatus, comprising:
a plurality of non-volatile drives;
a plurality of interconnected compute nodes that manage access to the drives; and
a drive manager configured to create a drive subset of (D+P) plus spare sequentially indexed using selected ones of the drives for implementation of protection groups that have D data members and P parity members, each of the selected drives having (D+P) sequentially indexed splits; and
distribute spare capacity across multiple drives by creating a group of spare splits in which each split exhibits both split index and drive index diagonal adjacency such that diagonally adjacent pairs of the spare splits are characterized by both sequential split indices and sequential drive indices relative to each other by relocating selected protection group members to the spare drive such that no split index and no drive contain multiple spare splits.
11. The apparatus of claim 10 wherein the drive manager is configured to create each of the protection groups using a single split index.
12. The apparatus of claim 11 wherein a new drive is added to the drive subset and the drive manager is configured to relocate selected protection group members characterized by split index and drive index adjacency to splits of the new drive.
13. The apparatus of claim 12 wherein the drive manager is configured to create a new protection group using splits vacated by relocating the selected protection group members.
14. The apparatus of claim 13 wherein the drive manager is configured to relocate or rebuild protection group members from a failing or failed one of the drives to the spare splits such that none of the drives contain multiple members of any of the protection groups.
15. The apparatus of claim 14 wherein the drive manager is configured to identify the protection groups of the splits on the failing or failed drive.
16. The apparatus of claim 15 wherein the drive manager is configured to determine, for each identified protection group, the drives that contain the members of the protection group.
17. The apparatus of claim 16 wherein the drive manager is configured to determine a largest drive index for each identified protection group.
18. The apparatus of claim 17 wherein the drive manager is configured to calculate adjusted spare split indices to which the protection group members from the failing or failed one of the drives are relocated or rebuilt by using the largest drive index to select a split index that is used as the adjusted spare split index for the member of the protection group associated with the largest drive index.
19. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for using a computer system to create spares, the method comprising:
from a set of drives of a storage system, creating a drive subset of (D+P) plus spare sequentially indexed drives for implementation of protection groups that have D data members and P parity members, each of the drives having (D+P) sequentially indexed splits; and
distributing spare capacity across multiple drives by creating a group of spare splits in which each split exhibits both split index and drive index diagonal adjacency such that diagonally adjacent pairs of the spare splits are characterized by both sequential split indices and sequential drive indices relative to each other by relocating selected protection group members to the spare drive such that no split index and no drive contain multiple spare splits.
20. The non-transitory computer-readable storage medium of claim 19 wherein the method further comprises calculating adjusted spare split indices to which protection group members from a failing or failed one of the drives are relocated or rebuilt by using a largest drive index to select a split index that is used as an adjusted spare split index for the member of the protection group associated with the largest drive index.