IP Library Granted Patent US 10,394,478
Granted Patent B2
US 10,394,478 · App. 15/846,330 · Granted Aug 27, 2019

Method and apparatus for storage device allocation

Inventors: Wayne Weihua Li (Beijing, CN); Geng Han (Beijing, CN); Jian Gao (Beijing, CN); Jibing Dong (Beijing, CN); Hongpo Gao (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0631G06F3/0604G06F3/064G06F3/0665G06F3/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 10,394,478
App. No.
15/846,330
Granted
Aug 27, 2019
Kind
B2
Abstract

Embodiments of the present disclosure provide a method and device for storage management. For example, there is proposed a method comprising: in response to a plurality of storage devices in a storage system being to be allocated to an unallocated logic storage area, determining a plurality of allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area; obtaining allocation uniformity of the plurality of storage devices with respect to an allocated logic storage area of the storage system; and selecting one of the plurality of allocation schemes at least based on the allocation uniformity, such that the uniform degree of the allocation has a minimum variation. Corresponding device and computer program product are also disclosed.

Claims (47)

1. A method for storage management, comprising:

in response to a plurality of storage devices in a storage system being to be allocated to an unallocated logic storage area, determining a plurality of allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area;

obtaining an allocation uniformity of the plurality of storage devices with respect to an allocated logic storage area of the storage system; and

selecting one of the plurality of allocation schemes at least based on the allocation uniformity, such that a uniform degree of an allocation has a minimum variation, the selecting of one of the plurality of allocation schemes including:

obtaining an allocation status of the plurality of storage devices with respect to the allocated logic storage area and sizes of the plurality of storage devices;

generating, based on the allocation status and the plurality of allocation schemes, allocation status candidates of the plurality of storage devices with respect to the allocated logic storage area and the unallocated logic storage area of the storage system;

determining, based on the allocation status candidates and the sizes of the plurality of storage devices, allocation uniformity candidates of the plurality of storage devices with respect to the allocated logic storage area and the unallocated logic storage area of the storage system; and

selecting, from the plurality of allocation schemes, an allocation scheme corresponding to one of the allocation uniformity candidates that has a minimum difference from the allocation uniformity, the allocation status being represented as a matrix, and each element of the matrix representing a number of times for allocating blocks in two of the plurality of storage devices to the same allocated logic storage area.

2. The method of claim 1 , wherein the unallocated logic storage area is organized into a predetermined number of blocks, and the determining a plurality of allocation schemes comprises:

generating, based on the predetermined number and the number of the plurality of storage devices, a plurality of candidate allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area; and

determining, as the plurality of allocation schemes, a subset of the plurality of candidate allocation schemes covering the plurality of storage devices.

3. The method of claim 1 , wherein the allocation uniformity is determined as:

U i,j =V i,j *S typical *S typical /( S i *S j ),

where U i,j represents the allocation uniformity, V i,j represents the allocation status, S typical represents a predetermined size of a storage device, S i and S j represent sizes of an i-th storage device and a j-th storage device in the plurality of storage devices, respectively, and i and j are natural numbers, respectively.

4. An electronic device, comprising:

at least one processor, and

at least one memory coupled to the at least one processor and storing machine-executable instructions, the instructions, when executed by the at least one processor, cause the device to perform actions comprising:

in response to a plurality of storage devices in a storage system being to be allocated to an unallocated logic storage area, determining a plurality of allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area;

obtaining an allocation uniformity of the plurality of storage devices with respect to an allocated logic storage area of the storage system; and

selecting one of the plurality of allocation schemes at least based on the allocation uniformity, such that a uniform degree of an allocation has a minimum variation, the selecting of one of the plurality of allocation schemes including:

obtaining an allocation status of the plurality of storage devices with respect to the allocated logic storage area and sizes of the plurality of storage devices;

generating, based on the allocation status and the plurality of allocation schemes, allocation status candidates of the plurality of storage devices with respect to the allocated logic storage area and the unallocated logic storage area of the storage system;

determining, based on the allocation status candidates and the sizes of the plurality of storage devices, allocation uniformity candidates of the plurality of storage devices with respect to the allocated logic storage area and the unallocated logic storage area of the storage system; and

selecting, from the plurality of allocation schemes, an allocation scheme corresponding to one of the allocation uniformity candidates that has a minimum difference from the allocation uniformity, the allocation status being represented as a matrix, and each element of the matrix representing a number of times for allocating blocks in two of the plurality of storage devices to the same allocated logic storage area.

5. The device of claim 4 , wherein the unallocated logic storage area is organized into a predetermined number of blocks, and the determining a plurality of allocation schemes comprises:

generating, based on the predetermined number and the number of the plurality of storage devices, a plurality of candidate allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area; and

determining, as the plurality of allocation schemes, a subset of the plurality of candidate allocation schemes covering the plurality of storage devices.

6. The device of claim 4 , wherein the allocation uniformity is determined as:

U i,j =V i,j *S typical *S typical /( S i *S j ),

where U i,j represents the allocation uniformity, V i,j represents the allocation status, S typical represents a predetermined size of a storage device, S i and S j represent sizes of an i-th storage device and a j-th storage device in the plurality of storage devices, respectively, and i and j are natural numbers, respectively.

7. A computer program product tangibly stored on a non-transient computer-readable medium and including machine-executable instructions, the machine-executable instructions, when executed, cause a machine to:

in response to a plurality of storage devices in a storage system being to be allocated to an unallocated logic storage area, determine a plurality of allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area;

obtain an allocation uniformity of the plurality of storage devices with respect to an allocated logic storage area of the storage system; and

select one of the plurality of allocation schemes at least based on the allocation uniformity, such that a uniform degree of an allocation has a minimum variation,

wherein the machine-executable instructions, when executed, cause the machine to:

obtain an allocation status of the plurality of storage devices with respect to the allocated logic storage area and sizes of the plurality of storage devices;

generate, based on the allocation status and the plurality of allocation schemes, allocation status candidates of the plurality of storage devices with respect to the allocated logic storage area and the unallocated logic storage area of the storage system;

determine, based on the allocation status candidates and the sizes of the plurality of storage devices, allocation uniformity candidates of the plurality of storage devices with respect to the allocated logic storage area and the unallocated logic storage area of the storage system; and

select, from the plurality of allocation schemes, an allocation scheme corresponding to one of the allocation uniformity candidates that has a minimum difference from the allocation uniformity,

wherein the allocation status is represented as a matrix, and

wherein each element of the matrix represents a number of times for allocating blocks in two of the plurality of storage devices to the same allocated logic storage area.

8. The computer program product of claim 7 , wherein the unallocated logic storage area is organized into a predetermined number of blocks, and the machine-executable instructions, when executed, cause the machine to:

generate, based on the predetermined number and the number of the plurality of storage devices, a plurality of candidate allocation schemes for allocating the plurality of storage devices to the unallocated logic storage area; and

determine, as the plurality of allocation schemes, a subset of the plurality of candidate allocation schemes covering the plurality of storage devices.

9. The computer program product of claim 7 , wherein the allocation uniformity is determined as:

U i,j =V i,j *S typical *S typical /( S i *S j ),

where U i,j represents the allocation uniformity, V i,j represents the allocation status, S typical represents a predetermined size of a storage device, S i and S j represent sizes of an i-th storage device and a j-th storage device in the plurality of storage devices, respectively, and i and j are natural numbers, respectively.

Assignments (8)
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 (045482/0131) Recorded May 20, 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; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 061749/0924 →
RELEASE OF SECURITY INTEREST AT REEL 045482 FRAME 0395 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058298/0314 →
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 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 045482/0131 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Mar 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 045482/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2018
From: LI, WAYNE WEIHUA; HAN, GENG; GAO, JIAN; DONG, JIBING; GOA, HONGPO
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 044753/0932 →
Priority Claims (1)
CN 2016 1 1192933 · Dec 21, 2016 · national
Continuity (1)
Related Publication 20180173445A1 · Jun 21, 2018