IP Library Granted Patent US 11,262,930
Granted Patent B2
US 11,262,930 · App. 16/996,115 · Granted Mar 1, 2022

Method, apparatus, and storage medium for managing stripe in storage system

Inventors: Huijuan Fan (Chengdu, CN); Chi Chen (Chengdu, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0644G06F3/0619G06F3/0647G06F3/0689
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,262,930
App. No.
16/996,115
Granted
Mar 1, 2022
Kind
B2
Abstract

Techniques manage stripes in a storage system. A balance index of a storage device in the storage system is determined respectively, the balance index indicating a relationship between distribution of a set of stripes involved by the storage device and distribution of a set of stripes involved by storage devices in the storage system. A source storage device is selected from the storage devices according to the determined balance indexes. A source extent is selected from a set of extents that have been allocated in the source storage device. Data in the source extent is moved to an idle extent in a destination storage device in the storage devices. The extents in the stripes may be distributed as evenly as possible in the storage devices, thereby ensuring load balance of the storage system and managing the stripes in the storage system in a more effective manner.

Claims (65)

1. A method for managing stripes in a storage system which comprises a plurality of storage devices, the method comprising:

determining a balance index of a storage device in the plurality of storage devices, respectively, the balance index indicating a relationship between distribution of a set of stripes involved by the storage device and distribution of a set of stripes involved by the plurality of storage devices;

selecting a source storage device from the plurality of storage devices according to the determined balance indexes;

selecting a source extent from a set of extents that have been allocated in the source storage device; and

moving data in the source extent to an idle extent in a destination storage device in the plurality of storage devices.

2. The method of claim 1 , wherein determining the balance index of the storage device comprises:

determining a device correlation of the storage device, the device correlation indicating distribution of the set of stripes involved by the storage system between the storage device and storage devices other than the storage device;

determining device correlations of the plurality of storage devices, respectively; and

determining the balance index of the storage device based on the device correlation of the storage device and the device correlations of the plurality of storage devices.

3. The method of claim 2 , wherein determining the device correlation of the storage device comprises:

determining a correlation between the storage device and each of the storage devices other than the storage device, respectively; and

determining the device correlation of the storage device based on the determined correlations.

4. The method of claim 3 , wherein respectively determining the correlation between the storage device and each of the other storage devices comprises: for one of the other storage devices,

determining, in the set of stripes, the number of stripes that involve the storage device and the other storage device at the same time; and

setting the correlation between the storage device and the other storage device based on the determined number.

5. The method of claim 3 , wherein determining the device correlation of the storage device comprises:

setting the device correlation to be directly proportional to the correlation between the storage device and each of the other storage devices.

6. The method of claim 1 , wherein selecting the source storage device from the plurality of storage devices comprises:

selecting the source storage device based on a determination that a balance index of the source storage device is higher than another balance index of another storage device in the plurality of storage devices.

7. The method of claim 1 , further comprising:

determining a balance index of the storage system, the balance index of the storage system indicating distribution of the set of stripes involved by the plurality of storage devices in the storage system; and

respectively determining the balance index of the storage device in the plurality of storage devices based on a determination that the balance index of the storage system meets a threshold condition.

8. The method of claim 2 , wherein determining the balance index of the storage device further comprises:

determining an access load of the storage device;

determining access loads of the plurality of storage devices, respectively; and

updating the balance index of the storage device based on the access load of the storage device and the access loads of the plurality of storage devices.

9. The method of claim 2 , wherein determining the balance index of the storage device further comprises:

determining a wear degree of the storage device;

determining wear degrees of the plurality of storage devices, respectively; and

updating the balance index of the storage device based on the wear degree of the storage device and the wear degrees of the plurality of storage devices.

10. The method of claim 1 , wherein selecting the source extent comprises: for a given extent in the set of extents involved by the source storage device,

determining an influence of the given extent on the balance index of the storage device;

determining influences of the set of extents on the balance index of the storage device; and

selecting the given extent as the source extent based on the influence of the given extent and the influences of the set of extents.

11. The method of claim 10 , wherein determining the influence of the given extent on the balance index of the storage device comprises:

determining a given stripe where the given extent is located;

determining, in the plurality of storage devices, a set of storage devices that respectively comprise all extents in the given stripe; and

determining the influence based on a device correlation of each storage device in the set of storage devices.

12. The method of claim 11 , wherein determining the influence of the given extent on the balance index of the storage device further comprises: updating the influence based on at least any one of an access load of the storage device and a wear degree of the storage device.

13. The method of claim 1 , further comprising selecting the destination storage device from the plurality of storage devices, which comprises:

determining, for a first set of storage devices in the plurality of storage devices that do not comprise any extent in a stripe where the source extent is located, a stripe correlation between a given storage device in the first set of storage devices and the given stripe; and

selecting the destination storage device from the first set of storage devices based on the determined stripe correlation.

14. The method of claim 13 , wherein determining the stripe correlation between the given storage device and the given stripe comprises:

determining, in the plurality of storage devices, a second set of storage devices that respectively comprise all extents in the stripe; and

determining the stripe correlation between the given storage device and the given stripe based on a correlation between the given storage device and each storage device in the second set of storage devices.

15. The method of claim 14 , further comprising:

determining a score of the given storage device based on at least any one of an access load of the given storage device and a wear degree of the given storage device, as well as the stripe correlation; and

selecting the destination storage device based on the score of the given storage device.

16. The method of claim 13 , wherein selecting the destination storage device from the first set of storage devices based on the determined stripe correlation comprises:

selecting the destination storage device based on a determination that a stripe correlation of the destination storage device in the first set of storage devices is lower than a stripe correlation of another storage device in the first set of storage devices.

17. The method of claim 13 , wherein selecting the destination storage device from the first set of storage devices based on the determined stripe correlation further comprises:

selecting the destination storage device based on the stripe correlation and a device correlation of the destination storage device.

18. The method of claim 1 , further comprising: moving the data in the source extent to the idle extent in the destination storage device based on a determination that a balance index of the source storage device is higher than a balance index of the destination storage device.

19. An electronic device, comprising:

at least one processor; and

a memory coupled to the at least one processor and having instructions stored therein, wherein the instructions, when executed by the at least one processor, cause the device to perform a method of:

determining a balance index of a storage device in a plurality of storage devices, respectively, the balance index indicating a relationship between distribution of a set of stripes involved by the storage device and distribution of a set of stripes involved by the plurality of storage devices,

selecting a source storage device from the plurality of storage devices according to the determined balance indexes,

selecting a source extent from a set of extents that have been allocated in the source storage device, and

moving data in the source extent to an idle extent in a destination storage device in the plurality of storage devices.

20. A computer program product having a non-transitory computer readable medium which stores a set of instructions to manage stripes in a storage system; the set of instructions, when carried out by computerized circuitry, causing the computerized circuitry to perform a method of:

determining a balance index of a storage device for each storage device in a plurality of storage devices in the storage system, the balance index indicating a relationship between distribution of a set of stripes involved by that storage device and distribution of a set of stripes involved by the plurality of storage devices;

selecting a source storage device from the plurality of storage devices according to the determined balance indexes;

selecting a source extent from a set of extents that have been allocated in the source storage device; and

moving data in the source extent to an idle extent in a destination storage device in the plurality of storage devices.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2020
From: FAN, HUIJUAN; CHEN, CHI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053802/0503 →