IP Library Granted Patent US 11,294,566
Granted Patent B2
US 11,294,566 · App. 16/881,400 · Granted Apr 5, 2022

Method, electronic device and computer program product for managing disks

Inventors: Liang Huang (Shanghai, CN); Ruipeng Yang (Shan, CN); Xiaoliang Zhao (Roo, CN); Xianlong Liu (Shanghai, CN); Yunfei Chen (Shanghai, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0604G06F3/0643G06F3/0683
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,294,566
App. No.
16/881,400
Granted
Apr 5, 2022
Kind
B2
Abstract

Techniques for managing disks involve determining, based on a parameter related to a capability of a plurality of disks, a reference capability parameter for each of the plurality of disks. In addition, the techniques involve determining a used capability parameter for each of the plurality of disks. Moreover, the techniques involve determining from the plurality of disks a first disk to be adjusted, a used capability parameter of the first disk exceeds a reference capability parameter of the first disk. The techniques further involve causing data of at least one disk slice in the first disk to be moved to a second disk of the plurality of disks, such that a difference between the used capability parameter of the first disk and reference capability parameter of the first disk is below a predetermined threshold. Accordingly, a balanced operation among respective storage disks can be achieved.

Claims (94)

1. A method of managing disks, comprising:

determining, based on a parameter related to a capability of a plurality of disks, a reference capability parameter for each of the plurality of disks;

determining a used capability parameter for each of the plurality of disks;

determining from the plurality of disks a first disk to be adjusted, a used capability parameter of the first disk exceeds a reference capability parameter of the first disk; and

causing data of at least one disk slice in the first disk to be moved to a second disk of the plurality of disks, such that a difference between the used capability parameter of the first disk and the reference capability parameter of the first disk is below a predetermined threshold;

wherein causing the data of the at least one disk slice in the first disk to be moved to the second disk comprises:

causing metadata corresponding to the data in the at least one disk slice to be moved to an intermediate memory, such that the reference capability parameter of the first disk exceeds or is equal to the used capability parameter of the first disk;

determining the metadata to be removed from the intermediate memory; and

moving the metadata to be removed from the intermediate memory to the second disk, such that a standard deviation between respective reference capability parameters and respective used capability parameters of the plurality of disks is below a predetermined threshold.

2. The method of claim 1 , wherein determining the reference capability parameter comprises:

determining a predetermined capability parameter of each of the plurality of disks;

determining a sum of predetermined capability parameters of the plurality of disks; and

determining the reference capability parameter as a ratio of the predetermined capability parameter to the sum.

3. The method of claim 1 , wherein determining the used capability parameter comprises:

determining an actual usage parameter of each of the plurality of disks;

determining a sum of actual usage parameters of the plurality of disks; and

determining the used capability parameter as a ratio of the actual usage parameter to the sum.

4. The method of claim 1 , wherein causing the metadata in the at least one disk slice to be moved to the intermediate memory comprises:

sorting disk slices in the first disk in a descending order according to an individual capability parameter of each disk slice in the first disk; and

performing iteratively the following steps:

in response to the used capability parameter of the first disk exceeding the reference capability parameter of the first disk, causing metadata of a disk slice in the first disk with a maximum individual capability parameter to be moved to the intermediate memory; and

updating the used capability parameter of the first disk.

5. The method of claim 4 , wherein the reference capability parameter at least comprises a first reference capability parameter and a second reference capability parameter, and the used capability parameter at least comprises a first used capability parameter and a second used capability parameter, wherein sorting disk slices in the first disk in a descending order comprises:

obtaining a first maximum difference value between the first reference capability parameter of the first disk and the first used capability parameter of the first disk;

obtaining a second maximum difference value between the second reference capability parameter for the first disk and the second used capability parameter of the first disk; and

in response to the first maximum difference value being below the second maximum difference value, sorting disk slices in the first disk in a descending order according to a first individual capability parameter of each disk slice.

6. The method of claim 1 , wherein the parameter related to the capability of the plurality of disks comprises at least one of:

a number of reads/writes per unit of time,

a counting of write requests, and

a capacity.

7. An electronic device, comprising:

a processor; and

a memory storing computer program instructions, the processor running the computer program instructions in the memory to control the electronic device to perform acts comprising:

determining, based on a parameter related to a capability of a plurality of disks, a reference capability parameter for each of the plurality of disks;

determining a used capability parameter for each of the plurality of disks;

determining from the plurality of disks a first disk to be adjusted, a used capability parameter of the first disk exceeds a reference capability parameter of the first disk; and

causing data of at least one disk slice in the first disk to be moved to a second disk of the plurality of disks, such that a difference between the used capability parameter of the first disk and the reference capability parameter of the first disk is below a predetermined threshold;

wherein causing the data of the at least one disk slice in the first disk to be moved to the second disk comprises:

causing metadata corresponding to the data in the at least one disk slice to be moved to an intermediate memory, such that the reference capability parameter of the first disk exceeds or equals to the used capability parameter of the first disk;

determining the metadata to be removed from the intermediate memory; and

moving the metadata to be removed from the intermediate memory to the second disk, such that a standard deviation between respective reference capability parameters and respective used capability parameters of the plurality of disks is below a predetermined threshold.

8. The electronic device of claim 7 , wherein determining the reference capability parameter comprises:

determining a predetermined capability parameter of each of the plurality of disks;

determining a sum of predetermined capability parameters of the plurality of disks; and

determining the reference capability parameter as a ratio of the predetermined capability parameter to the sum.

9. The electronic device of claim 7 , wherein determining the used capability parameter comprises:

determining an actual usage parameter of each of the plurality of disks;

determining a sum of actual usage parameters of the plurality of disks; and

determining the used capability parameter as a ratio of the actual usage parameter to the sum.

10. The electronic device of claim 7 , wherein causing the metadata in the at least one disk slice to be moved to the intermediate memory comprises:

sorting disk slices in the first disk in a descending order according to an individual capability parameter of each disk slice in the first disk; and

performing iteratively the following steps:

in response to the used capability parameter of the first disk exceeding the reference capability parameter of the first disk, causing metadata of a disk slice in the first disk with a maximum individual capability parameter to be moved to the intermediate memory; and

updating the used capability parameter of the first disk.

11. The electronic device of claim 10 , wherein the reference capability parameter at least comprises a first reference capability parameter and a second reference capability parameter, and the used capability parameter at least comprises a first used capability parameter and a second used capability parameter, wherein sorting disk slices in the first disk in a descending order comprises:

obtaining a first maximum difference value between the first reference capability parameter of the first disk and the first used capability parameter of the first disk;

obtaining a second maximum difference value between the second reference capability parameter for the first disk and the second used capability parameter of the first disk; and

in response to the first maximum difference value being below the second maximum difference value, sorting disk slices in the first disk in a descending order according to a first individual capability parameter of each disk slice.

12. The electronic device of claim 7 , wherein the parameter related to the capability of the plurality of disks comprises at least one of:

a number of reads/writes per unit of time,

a counting of write requests, and

a capacity.

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

determining, based on a parameter related to a capability of a plurality of disks, a reference capability parameter for each of the plurality of disks;

determining a used capability parameter for each of the plurality of disks;

determining from the plurality of disks a first disk to be adjusted, a used capability parameter of the first disk exceeds a reference capability parameter of the first disk; and

causing data of at least one disk slice in the first disk to be moved to a second disk of the plurality of disks, such that a difference between the used capability parameter of the first disk and the reference capability parameter of the first disk is below a predetermined threshold;

wherein causing the data of the at least one disk slice in the first disk to be moved to the second disk comprises:

causing metadata corresponding to the data in the at least one disk slice to be moved to an intermediate memory, such that the reference capability parameter of the first disk exceeds or is equal to the used capability parameter of the first disk;

determining the metadata to be removed from the intermediate memory; and

moving the metadata to be removed from the intermediate memory to the second disk, such that a standard deviation between respective reference capability parameters and respective used capability parameters of the plurality of disks is below a predetermined threshold.

14. The method of claim 1 , wherein at least one of the plurality of disks is a flash drive and another of the plurality of disks is not a flash drive.

15. The electronic device of claim 7 , wherein at least one of the plurality of disks is a flash drive and another of the plurality of disks is not a flash drive.

16. The computer program product of claim 13 , wherein determining the reference capability parameter comprises:

determining a predetermined capability parameter of each of the plurality of disks;

determining a sum of predetermined capability parameters of the plurality of disks; and

determining the reference capability parameter as a ratio of the predetermined capability parameter to the sum.

17. The computer program product of claim 13 , wherein determining the used capability parameter comprises:

determining an actual usage parameter of each of the plurality of disks;

determining a sum of actual usage parameters of the plurality of disks; and

determining the used capability parameter as a ratio of the actual usage parameter to the sum.

18. The computer program product of claim 13 , wherein causing the metadata in the at least one disk slice to be moved to the intermediate memory comprises:

sorting disk slices in the first disk in a descending order according to an individual capability parameter of each disk slice in the first disk; and

performing iteratively the following steps:

in response to the used capability parameter of the first disk exceeding the reference capability parameter of the first disk, causing metadata of a disk slice in the first disk with a maximum individual capability parameter to be moved to the intermediate memory; and

updating the used capability parameter of the first disk.

19. The computer program product of claim 18 , wherein the reference capability parameter at least comprises a first reference capability parameter and a second reference capability parameter, and the used capability parameter at least comprises a first used capability parameter and a second used capability parameter, wherein sorting disk slices in the first disk in a descending order comprises:

obtaining a first maximum difference value between the first reference capability parameter of the first disk and the first used capability parameter of the first disk;

obtaining a second maximum difference value between the second reference capability parameter for the first disk and the second used capability parameter of the first disk; and

in response to the first maximum difference value being below the second maximum difference value, sorting disk slices in the first disk in a descending order according to a first individual capability parameter of each disk slice.

20. The computer program product of claim 13 , wherein the parameter related to the capability of the plurality of disks comprises at least one of:

a number of reads/writes per unit of time,

a counting of write requests, and

a capacity.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 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 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 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 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 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 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2020
From: HUANG, LIANG; YANG, RUIPENG; ZHAO, XIAOLIANG; LIU, XIANLONG; CHEN, YUNFEI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052965/0224 →
Priority Claims (1)
CN 201911044969.8 · Oct 30, 2019 · national
Continuity (1)
Related Publication 20210132802A1 · May 6, 2021