IP Library Granted Patent US 11,150,991
Granted Patent B2
US 11,150,991 · App. 16/743,624 · Granted Oct 19, 2021

Dynamically adjusting redundancy levels of storage stripes

Inventors: Charles Ma (Beijing, CN); Vamsi K. Vankamamidi (Hopkinton, MA); Hongpo Gao (Beijing, CN); Shaoqin Gong (Beijing, CN); Ree Lei Sun (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F11/1096
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 11,150,991
App. No.
16/743,624
Granted
Oct 19, 2021
Kind
B2
Abstract

A method of managing storage resources is provided. The method includes (a) storing data in an array of storage extents on respective storage drives of a plurality of storage drives, the array of storage extents having a first level of redundancy; and (b) in accordance with a storage management policy, adjusting the array of storage extents to have a second level of redundancy by changing the array of storage extents from having a first number of storage extents on respective storage drives to having a second number of storage extents on respective storage drives, the second level of redundancy providing a different tolerance for failure than the first level of redundancy. An apparatus, system, and computer program product for performing a similar method are also provided.

Claims (34)

1. A method of managing storage resources, the method comprising:

storing metadata that points to user data in an array of storage extents on respective storage drives of a plurality of storage drives, the array of storage extents having a first level of redundancy, the first level of redundancy having a first number of storage extents on respective storage drives, the user data being stored on a different array of storage extents on respective storage drives of the plurality of storage drives; and

in accordance with a storage management policy, adjusting the array of storage extents to have a second level of redundancy by changing the array of storage extents from having the first number of storage extents on respective storage drives to having a second number of storage extents on respective storage drives, the second level of redundancy providing a different tolerance for failure than the first level of redundancy.

2. The method of claim 1 ,

wherein the first number is two and the first level of redundancy is two-way mirroring between a first storage extent and a second storage extent;

wherein the second number is three and the second level of redundancy is three-way mirroring; and

wherein adjusting the array of storage extents to have the second level of redundancy includes copying metadata from one of the first storage extent and the second storage extent to a third storage extent.

3. The method of claim 1 ,

wherein the first number is three and the first level of redundancy is three-way mirroring; and

wherein the second number is two and the second level of redundancy is two-way mirroring.

4. The method of claim 1 wherein the storage management policy includes a rule that at least one array should be enhanced by adding a storage extent only if the plurality of storage drives includes at least a threshold minimum amount of spare storage space.

5. The method of claim 4 wherein the threshold minimum amount of spare storage space is larger than a size of a largest storage drive of the plurality of storage drives.

6. The method of claim 4 wherein the storage management policy further includes a rule that at least one array should be enhanced by adding a storage extent only if an availability of system resources exceeds a threshold minimum resource availability.

7. The method of claim 6 wherein the storage management policy further includes a rule that at least one array should be retrograded if that array has already been enhanced and the availability of system resources falls below another threshold, the other threshold being less than the threshold minimum resource availability.

8. The method of claim 4 wherein the storage management policy further includes a rule that at least one array should be retrograded if that array has already been enhanced and the plurality of storage drives includes less than another threshold amount of spare storage space, the other hold amount of spare storage space being less than the threshold minimum amount of spare storage space.

9. The method of claim 4 wherein the method further comprises:

storing additional metadata in a plurality of additional arrays of storage extents on respective storage drives of the plurality of storage drives, the array and the plurality of additional arrays forming a plurality of arrays; and

in response to the storage management policy indicating that at least one array should be enhanced, selecting an array to be enhanced from the plurality of arrays based on the array having at least one storage extent on a drive having a drive health below a threshold minimum health value.

10. The method of claim 4 wherein the method further comprises:

storing additional metadata in a plurality of additional arrays of storage extents on respective storage drives of the plurality of storage drives, the array and the plurality of additional arrays forming a plurality of arrays; and

in response to the storage management policy indicating that at least one array should be enhanced, selecting an array to be enhanced from the plurality of arrays based on the storage drives providing the storage extents of the array having an average drive workload lower than any other array of the plurality of arrays.

11. A computer program product comprising a non-transitory computer-readable storage medium storing a set of instructions, which, when performed by a computing device, causes the computing device to manage storage resources by:

storing data in an array of storage extents on respective storage drives of a plurality of storage drives, the array of storage extents having a first level of redundancy, the first level of redundancy having a first number of storage extents on respective storage drives; and

in accordance with a storage management policy, adjusting the array of storage extents to have a second level of redundancy by changing the array of storage extents from having the first number of storage extents on respective storage drives to having a second number of storage extents on respective storage drives, the second level of redundancy providing a different tolerance for failure than the first level of redundancy, wherein the storage management policy includes a rule that at least one array should be enhanced by adding a storage extent only if the plurality of storage drives includes at least a threshold minimum amount of spare storage space.

12. The computer program product of claim 11 wherein the threshold minimum amount of spare storage space is larger than a size of a largest storage drive of the plurality of storage drives.

13. The computer program product of claim 11 wherein the storage management policy further includes a rule that at least one array should be enhanced by adding a storage extent only if an availability of system resources exceeds a threshold minimum resource availability.

14. The computer program product of claim 13 wherein the storage management policy further includes a rule that at least one array should be retrograded if that array has already been enhanced and the availability of system resources falls below another threshold, the other threshold being less than the threshold minimum resource availability.

15. The computer program product of claim 11 wherein the storage management policy further includes a rule that at least one array should be retrograded if that array has already been enhanced and the plurality of storage drives includes less than another threshold amount of spare storage space, the other hold amount of spare storage space being less than the threshold minimum amount of spare storage space.

16. A method of managing storage resources, the method comprising:

storing data in an array of storage extents on respective storage drives of a plurality of storage drives, the array of storage extents having a first level of redundancy, wherein the first level of redundancy includes a set of storage extents that exclusively stores non-parity information and a first storage extent outside the set that exclusively stores first parity information about the set of storage extents; and

in accordance with a storage management policy, adjusting the array of storage extents to have a second level of redundancy by changing the array of storage extents to add a second storage extent outside the set that exclusively stores second parity information about the set of storage extents in addition to the first storage extent, the second parity information being different than the first parity information.

17. A method of managing storage resources, the method comprising:

storing data in an array of storage extents on respective storage drives of a plurality of storage drives, the array of storage extents having a first level of redundancy, wherein the first level of redundancy includes a set of storage extents that exclusively stores non-parity information and two storage extents outside the set that exclusively store parity information about the set of storage extents; and

in accordance with a storage management policy, adjusting the array of storage extents to have a second level of redundancy by changing the array of storage extents to remove one of the two storage extents that exclusively store parity information about the set of storage extents.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2020
From: MA, CHARLES; VANKAMAMIDI, VAMSI K.; GAO, HONGPO; GONG, SHAOQIN; SUN, REE LEI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051815/0109 →