IP Library Granted Patent US 10,416,929
Granted Patent B1
US 10,416,929 · App. 15/662,514 · Granted Sep 17, 2019

Relocation target selection

Inventors: Felix Shvaiger (Brighton, MA); Arieh Don (Newton, MA); Anton Kucherov (Milford, MA); Vinay Rao (Karnataka, IN)
Assignee: EMC IP Holding Company LLC
G06F3/0665G06F3/061G06F3/067G06F3/0647G06F3/0685G06F3/0605G06F3/0637G06F3/0649
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,416,929
App. No.
15/662,514
Filed
Jul 28, 2017
Granted
Sep 17, 2019
Kind
B1
Examiner
YU, JAE UN
Art Unit
2135
USPC
711/165
Abstract

Described embodiments provide systems and methods for operating a storage system. A portion of data currently on a source Logical Unit (LUN) of a disk array of a plurality of disk arrays is written to a destination LUN of a disk array of a plurality of disk arrays. The destination LUN of a disk array of the plurality of disk arrays to write the data to is established based on an efficiency indicator associated with the destination LUN of a disk array of the plurality of disk arrays. The writing at least a portion of data currently on a source LUN of a disk array of a plurality of disk arrays may be performed as part of a replication process or as part of a relocation process.

Claims (40)

1. A method comprising:

determining, in response to an efficiency indicator associated with a destination Logical Unit (LUN) of a destination disk array of a plurality of disk arrays, to relocate at least a portion of data currently on a source LUN of a source disk array to the destination LUN of the destination disk array of the plurality of disk arrays, wherein the destination LUN supports deduplication, the determining comprising:

receiving hash values, at the destination disk array, corresponding to data stored at the source disk array,

retrieving, by the destination disk array, a hash table of the source disk array; and

determining a percentage of hash values of the source disk array that currently reside on the destination disk array;

selecting a first one of the destination LUN of the destination disk array to relocate the data based on the efficiency indicator associated with the destination LUN of the destination disk array; and

relocating the portion of the data on the source LUN of the source disk array to the selected destination LUN of the destination disk array;

wherein the portion of the data of the source LUN of the source disk array is relocated to the destination LUN of the destination disk array when the percentage of hash values exceeds a threshold value percentage, the destination LUN saving 100 minus the threshold value of new data for relocation,

wherein the efficiency indicator reflects the threshold value percentage.

2. The method of claim 1 further including selecting a first one of the destination LUN of a disk array of the plurality of disk arrays to relocate the data to based on an array load on the destination LUN of a disk array of the plurality of disk arrays.

3. The method of claim 1 further including selecting a first one of the destination LUN of a disk array of the plurality of disk arrays to relocate the data to based on how full the destination LUN of a disk array of the plurality of disk arrays is.

4. The method of claim 1 further comprising determining by a user how much weight to give each factor of the efficiency indicator.

5. The method of claim 1 further comprising swapping device names of the source LUN of a disk array and the destination LUN of a disk array while maintaining a same device name on the host machine.

6. The method of claim 1 wherein the determining to relocate data from the source LUN of a disk array, the establishing a destination LUN of a disk array to write the data to, and the relocating data is repeated periodically.

7. A storage system comprising:

a processor; and

memory storing computer program code that when executed on the processor causes the processor to operate a storage system, the storage system operable to perform the operations of:

determining, in response to an efficiency indicator associated with a destination Logical Unit (LUN) of a destination disk array of a plurality of disk arrays, to relocate at least a portion of data currently on a source LUN of a source disk array to the destination LUN of the destination disk array of the plurality of disk arrays wherein the destination LUN supports deduplication, the determining comprising:

receiving hash values, at the destination disk array, corresponding to data stored at the source disk array;

retrieving, by the destination disk array, a hash table of the source disk array; and

determining a percentage of hash values of the source disk array that currently reside on the destination disk array;

selecting a first one of the destination LUN of the destination disk array to relocate the data based on the efficiency indicator associated with the destination LUN of the destination disk array; and

relocating the portion of the data on the source LUN of the source disk array to the selected destination LUN of the destination disk array;

wherein the portion of the data of the source LUN of the source disk array is relocated to the destination LUN of the destination disk array when the percentage of hash values exceeds a threshold value percentage, the destination LUN saving 100 minus the threshold value of new data for relocation,

wherein the efficiency indicator reflects the threshold value percentage.

8. The storage system of claim 7 further including selecting a first one of the destination LUN of a disk array of the plurality of disk arrays to relocate the data to based on an array load on the destination LUN of a disk array of the plurality of disk arrays.

9. The storage system of claim 7 further including selecting a first one of the destination LUN of a disk array of the plurality of disk arrays to relocate the data to based on how full the destination LUN of a disk array of the plurality of disk arrays is.

10. The storage system of claim 7 further comprising determining by a user how much weight to give each factor of the efficiency indicator.

11. The storage system of claim 7 further comprising swapping device names of the source LUN of a disk array and the destination LUN of a disk array while maintaining a same device name on the host machine.

12. The storage system of claim 7 wherein the determining to relocate data from the source LUN of a disk array, the establishing a destination LUN of a disk array to relocate the data to, and the relocating data may be repeated periodically.

13. A computer program product including a non-transitory computer readable storage medium having computer program code encoded thereon that when executed on a processor of a computer causes the computer to operate a storage system, the computer program product comprising:

computer program code for determining, in response to an efficiency indicator associated with a destination Logical Unit (LUN) of a destination disk array of a plurality of disk arrays, to relocate at least a portion of data currently on a source LUN of a source disk array to the destination LUN of the destination disk array, wherein the destination LUN supports deduplication;

computer program code for selecting a first one of the destination LUN of the destination disk array to relocate the data based on the efficiency indicator associated with the destination LUN of the destination disk array; and

computer program code for relocating the portion of the data on the source LUN of the source disk array to the selected destination LUN of the destination disk array;

wherein the portion of the data of the source LUN of the source disk array is relocated to the destination LUN of the destination disk array when the percentage of hash values exceeds a threshold value percentage, the destination LUN saving 100 minus the threshold value of new data for relocation;

wherein the efficiency indicator reflects the threshold value percentage.

14. The computer program product of claim 13 further comprising computer program code for selecting a first one of the destination LUN of a disk array of the plurality of disk arrays to relocate the data to based on an array load on the destination LUN of a disk array of the plurality of disk arrays.

15. The computer program product of claim 13 further comprising computer program code for selecting a first one of the destination LUN of a disk array of the plurality of disk arrays to relocate the data to based on how full the destination LUN of a disk array of the plurality of disk arrays is.

16. The computer program product of claim 13 further comprising computer program code for determining by a user how much weight to give each factor of the efficiency indicator.

17. The computer program product of claim 13 further comprising computer program code for swapping device names of the source LUN of a disk array and the destination while maintaining a same device name on the host machine.

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 (043775/0082) 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
Reel/Frame 060958/0468 →
RELEASE OF SECURITY INTEREST AT REEL 043772 FRAME 0750 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0606 →
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 (CREDIT) Recorded Sep 6, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043772/0750 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Sep 6, 2017
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 043775/0082 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2017
From: SHVAIGER, FELIX; DON, ARIEH; KUCHEROV, ANTON; RAO, VINAY
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 043445/0050 →