IP Library Granted Patent US 12,373,112
Granted Patent B2
US 12,373,112 · App. 17/987,370 · Granted Jul 29, 2025

Mapped raid configuration with multiple disk groups and a shared pool of hot spare extents

Inventors: Hailan Dong (Chengdu, CN); Si Zhang (Chengdu, CN); Chi Chen (Chengdu, CN)
Assignee: Dell Products L.P.
G06F3/0619G06F3/0647G06F3/0653G06F3/0689G06F2212/262
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,373,112
App. No.
17/987,370
Granted
Jul 29, 2025
Kind
B2
Abstract

An apparatus comprises a processing device configured to maintain, for a storage system implementing a mapped redundant array of independent disks (RAID) configuration including disk groups providing RAID groups comprising data and hot spare extents, a shared pool of hot spare extents comprising first and second sets of hot spare extents from first and second ones of the disk groups. The processing device is further configured to detect failure of a disk in the first disk group, to determine whether available ones of the first set of hot spare extents provide sufficient storage capacity for rebuilding the failed disk and, responsive to determining that available ones of the first set of hot spare extents do not provide sufficient storage capacity for rebuilding the failed disk, to rebuild the failed disk utilizing one or more of the second set of hot spare extents in the shared pool of hot spare extents.

Claims (52)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured to perform steps of:

maintaining, for a storage system implementing a mapped redundant array of independent disks (RAID) configuration including two or more disk groups each providing one or more RAID groups comprising one or more data extents and one or more hot spare extents, a shared pool of hot spare extents, the shared pool of hot spare extents comprising a first set of hot spare extents on one or more disks in a first one of the two or more disk groups and a second set of hot spare extents on one or more disks in a second one of the two or more disk groups;

detecting failure of a given disk in the first disk group;

determining whether available ones of the first set of hot spare extents in the shared pool of hot spare extents provide sufficient storage capacity for rebuilding the given disk;

responsive to determining that available ones of the first set of hot spare extents in the shared pool of hot spare extents do not provide sufficient storage capacity for rebuilding the given disk, selecting one or more of the second set of hot spare extents for rebuilding the given disk; and

rebuilding the given disk utilizing at least the selected one or more of the second set of hot spare extents in the shared pool of hot spare extents;

wherein the first disk group provides storage for a first one of a plurality of storage tiers of the storage system, the first storage tier providing a first level of performance;

wherein the second disk group provides storage for a second one of the plurality of storage tiers of the storage system, the second storage tier providing a second level of performance, the second level of performance being different than the first level of performance;

wherein, if the second level of performance provided by the second storage tier of the storage system is a higher level of performance than the first level of performance provided by the first storage tier of the storage system, selecting the one or more of the second set of hot spare extents for rebuilding the given disk is further responsive to determining that the shared pool of hot spare extents does not include any available hot spare extents on any of the two or more disk groups providing storage for one or more of the plurality of storage tiers of the storage system that provides a given level of performance that is greater than the first level of performance and less than the second level of performance; and

wherein, if the second level of performance provided by the second storage tier of the storage system is a lower level of performance than the first level of performance provided by the first storage tier of the storage system, selecting the one or more of the second set of hot spare extents for rebuilding the given disk is further responsive to determining that the shared pool of hot spare extents does not include any available hot spare extents on any of the two or more disk groups providing storage for one or more of the plurality of storage tiers of the storage system that provides a given level of performance that is less than the first level of performance and greater than the second level of performance.

2. The apparatus of claim 1 wherein the at least one processing device is further configured to perform steps of:

detecting addition of one or more disks to the first disk group; and

migrating rebuilt data stored on the selected one or more of the second set of hot spare extents in the shared pool of hot spare extents to the one or more disks added to the first disk group.

3. The apparatus of claim 1 wherein rebuilding the given disk further utilizes at least one available one of the first set of hot spare extents in the shared pool of hot spare extents.

4. The apparatus of claim 1 wherein rebuilding the given disk further utilizes at least one of a third set of hot spare extents on one or more disks in a third one of the two or more disk groups.

5. The apparatus of claim 4 wherein the third disk group provides storage for a third one of the plurality of storage tiers of the storage system.

6. The apparatus of claim 1 wherein the first disk group comprises one or more RAID groups configured to recover a designated number of simultaneous disk failures.

7. The apparatus of claim 6 wherein detecting the failure of the given disk in the first disk group comprises detecting failure of the given disk (i) following rebuild of the designated number of failed disks in the first disk group and (ii) prior to replacement of the designated number of failed disks in the first disk group of the storage system.

8. The apparatus of claim 1 wherein the two or more disk groups are arranged in two or more extent pools, the two or more extent pools providing different storage system performance.

9. The apparatus of claim 8 wherein the two or more extent pools are associated with different ones of the plurality of storage tiers of the storage system.

10. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to perform steps of:

maintaining, for a storage system implementing a mapped redundant array of independent disks (RAID) configuration including two or more disk groups each providing one or more RAID groups comprising one or more data extents and one or more hot spare extents, a shared pool of hot spare extents, the shared pool of hot spare extents comprising a first set of hot spare extents on one or more disks in a first one of the two or more disk groups and a second set of hot spare extents on one or more disks in a second one of the two or more disk groups;

detecting failure of a given disk in the first disk group;

determining whether available ones of the first set of hot spare extents in the shared pool of hot spare extents provide sufficient storage capacity for rebuilding the given disk;

responsive to determining that available ones of the first set of hot spare extents in the shared pool of hot spare extents do not provide sufficient storage capacity for rebuilding the given disk, selecting one or more of the second set of hot spare extents for rebuilding the given disk; and

rebuilding the given disk utilizing at least the selected one or more of the second set of hot spare extents in the shared pool of hot spare extents;

wherein the first disk group provides storage for a first one of a plurality of storage tiers of the storage system, the first storage tier providing a first level of performance;

wherein the second disk group provides storage for a second one of the plurality of storage tiers of the storage system, the second storage tier providing a second level of performance, the second level of performance being different than the first level of performance;

wherein, if the second level of performance provided by the second storage tier of the storage system is a higher level of performance than the first level of performance provided by the first storage tier of the storage system, selecting the one or more of the second set of hot spare extents for rebuilding the given disk is further responsive to determining that the shared pool of hot spare extents does not include any available hot spare extents on any of the two or more disk groups providing storage for one or more of the plurality of storage tiers of the storage system that provides a given level of performance that is greater than the first level of performance and less than the second level of performance; and

wherein, if the second level of performance provided by the second storage tier of the storage system is a lower level of performance than the first level of performance provided by the first storage tier of the storage system, selecting the one or more of the second set of hot spare extents for rebuilding the given disk is further responsive to determining that the shared pool of hot spare extents does not include any available hot spare extents on any of the two or more disk groups providing storage for one or more of the plurality of storage tiers of the storage system that provides a given level of performance that is less than the first level of performance and greater than the second level of performance.

11. The computer program product of claim 10 wherein rebuilding the given disk further utilizes at least one of a third set of hot spare extents on one or more disks in a third one of the two or more disk groups.

12. The computer program product of claim 11 wherein the third disk group provides storage for a third one of the plurality of storage tiers of the storage system.

13. A method comprising:

maintaining, for a storage system implementing a mapped redundant array of independent disks (RAID) configuration including two or more disk groups each providing one or more RAID groups comprising one or more data extents and one or more hot spare extents, a shared pool of hot spare extents, the shared pool of hot spare extents comprising a first set of hot spare extents on one or more disks in a first one of the two or more disk groups and a second set of hot spare extents on one or more disks in a second one of the two or more disk groups;

detecting failure of a given disk in the first disk group;

determining whether available ones of the first set of hot spare extents in the shared pool of hot spare extents provide sufficient storage capacity for rebuilding the given disk;

responsive to determining that available ones of the first set of hot spare extents in the shared pool of hot spare extents do not provide sufficient storage capacity for rebuilding the given disk, selecting one or more of the second set of hot spare extents for rebuilding the given disk; and

rebuilding the given disk utilizing at least the selected one or more of the second set of hot spare extents in the shared pool of hot spare extents;

wherein the first disk group provides storage for a first one of a plurality of storage tiers of the storage system, the first storage tier providing a first level of performance;

wherein the second disk group provides storage for a second one of the plurality of storage tiers of the storage system, the second storage tier providing a second level of performance, the second level of performance being different than the first level of performance;

wherein, if the second level of performance provided by the second storage tier of the storage system is a higher level of performance than the first level of performance provided by the first storage tier of the storage system, selecting the one or more of the second set of hot spare extents for rebuilding the given disk is further responsive to determining that the shared pool of hot spare extents does not include any available hot spare extents on any of the two or more disk groups providing storage for one or more of the plurality of storage tiers of the storage system that provides a given level of performance that is greater than the first level of performance and less than the second level of performance;

wherein, if the second level of performance provided by the second storage tier of the storage system is a lower level of performance than the first level of performance provided by the first storage tier of the storage system, selecting the one or more of the second set of hot spare extents for rebuilding the given disk is further responsive to determining that the shared pool of hot spare extents does not include any available hot spare extents on any of the two or more disk groups providing storage for one or more of the plurality of storage tiers of the storage system that provides a given level of performance that is less than the first level of performance and greater than the second level of performance; and

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

14. The method of claim 13 wherein rebuilding the given disk further utilizes at least one of a third set of hot spare extents on one or more disks in a third one of the two or more disk groups.

15. The method of claim 14 wherein the third disk group provides storage for a third one of the plurality of storage tiers of the storage system.

16. The method of claim 13 wherein rebuilding the given disk further utilizes at least one of a third set of hot spare extents on one or more disks in a third one of the two or more disk groups.

17. The method of claim 13 wherein the first disk group comprises one or more RAID groups configured to recover a designated number of simultaneous disk failures.

18. The method of claim 17 wherein detecting the failure of the given disk in the first disk group comprises detecting failure of the given disk (i) following rebuild of the designated number of failed disks in the first disk group and (ii) prior to replacement of the designated number of failed disks in the first disk group of the storage system.

19. The method of claim 13 wherein the two or more disk groups are arranged in two or more extent pools, the two or more extent pools providing different storage system performance.

20. The method of claim 19 wherein the two or more extent pools are associated with different ones of the plurality of storage tiers of the storage system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2022
From: DONG, HAILAN; ZHANG, SI; CHEN, CHI
To: DELL PRODUCTS L.P.
Reel/Frame 061778/0905 →
Priority Claims (1)
CN 202211334992.2 · Oct 28, 2022 · national
Continuity (1)
Related Publication 20240143189A1 · May 2, 2024
References Cited (14)
US 5941994A · DeKoning · 1999 [cited by examiner]
US 10095585B1 · Proulx · 2018 [cited by examiner]
US 20070088990A1 · Schmitz · 2007 [cited by examiner]
US 20100205372A1 · Daikokuya · 2010 [cited by examiner]
US 20200341845A1 · Gao · 2020 [cited by examiner]
NVM Express, NVM Express, Revision 1.3, NVM Express, May 1, 2017, 282 pages. [cited by applicant]
Dell EMC, “Dell EMC Unity: FAST Technology Overview,” Technical White Paper, Feb. 2021, 38 pages. [cited by applicant]
Dell Technologies, “Dell EMC VMAX All Flash: Family Overview,” Technical White Paper, Sep. 2020, 40 pages. [cited by applicant]
Dell Technologies, “Dell EMC Unity: Unisphere Overview,” Technical White Paper, Feb. 2020, 41 pages. [cited by applicant]
Emc2, “FAST.X with EMC CloudArray,” White Paper, Sep. 2015, 11 pages. [cited by applicant]
Dell EMC “DELL EMC VMAX All Flash and VMAX3: Reliability, Availability, and Serviceability,” Technical White Paper, Dec. 2020, 57 pages. [cited by applicant]
Dell EMC, “Dell EMC VMAX3 Family,” Data Sheet, Nov. 2016, 8 pages. [cited by applicant]
Dell Technologies, “Dell Unity: Dynamic Pools,” Technical White Paper, Apr. 2022, 43 pages. [cited by applicant]
dell.com, “Double Faults and Punctures in RAID Arrays,” https://www.dell.com/support/kbdoc/en-us/article/lkbprint?ArticleNumber=000139251&AccessLevel=10&Lang=en, Article No. 000139251, Mar. 25, 2022, 7 pages. [cited by applicant]