IP Library Granted Patent US 10,789,002
Granted Patent B1
US 10,789,002 · App. 15/790,377 · Granted Sep 29, 2020

Hybrid data deduplication for elastic cloud storage devices

Inventors: Mikhail Danilov (Saint Petersburg, RU); Kirill Gusakov (Saint Petersburg, RU)
Assignee: EMC IP Holding Company LLC
G06F3/0641G06F3/0608G06F16/1748G06F16/1844G06F3/067G06F16/245
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,789,002
App. No.
15/790,377
Granted
Sep 29, 2020
Kind
B1
Abstract

Facilitating data deduplication in an elastic cloud storage environment is provided herein. A system can comprise a processor and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations. The operations can comprise facilitating a first deduplication of first data at a first storage device based on a determination that the first storage device comprises duplicated data. The operations can also comprise sending, by the system, a request for a second deduplication at a second storage device after completion of the first deduplication at the first storage device. In addition, the operations can comprise facilitating, by the system, the second deduplication of second data at the second storage device, wherein the second data comprises a copy of the duplicated data.

Claims (50)

1. A method, comprising:

facilitating, by a system comprising a processor, a first removal of first data at a first storage device based on a determination that the first data is a first duplicate of second data at the first storage device;

facilitating, by the system, a second removal of third data at a second storage device, wherein the third data is a second duplicate of the second data, and wherein the facilitating the second removal is based on a request to evaluate the third data;

temporarily halting, by the system, the first removal and the second removal based on a detection of a collision caused by the first removal and the second removal being performed at a same time; and

resuming, by the system, the first removal and the second removal after a defined amount of time after the detection of the collision.

2. The method of claim 1 , wherein the facilitating the first removal of the first data comprises facilitating an inline deduplication that replaces the first data with a reference to the second data.

3. The method of claim 1 , wherein the facilitating the second removal of the third data comprises facilitating a post-process deduplication that replaces the third data with a reference to the second data at the first storage device.

4. The method of claim 3 , wherein the first storage device and the second storage device are geographically distributed devices, and wherein the facilitating the post-process deduplication comprises aligning the post-process deduplication at a geographically distributed level with geographically distributed replication.

5. The method of claim 1 , wherein the first storage device and the second storage device are storage devices of an elastic cloud storage system.

6. The method of claim 1 , further comprising:

designating, by the system, the second data at the first storage device as unchangeable data.

7. The method of claim 6 , further comprising:

detecting, by the system, the collision between the first removal of the first data and the second removal of the third data, resulting in the detection of the collision, wherein the detecting is based on the second data being the unchangeable data.

8. The method of claim 1 , further comprising:

maintaining, by the system and at the first storage device, a first index of first identifying information for the first data, and a second index of second identifying information for the second data; and

maintaining, by the system and at the second storage device, a third index of third identifying information for the third data.

9. The method of claim 1 , wherein the facilitating the second removal is in response to:

receiving, by the system, a replication request from the second storage device to replicate the third data at the first storage device; and

determining, by the system, that the third data is duplicate data.

10. The method of claim 1 , further comprising:

protecting, by the system, additional data portions through replication of the additional data portions with associated parent chunks, wherein the protecting the additional data portions is performed irrespective of the first removal of the first data.

11. The method of claim 1 , wherein the facilitating the first removal of the first data and the facilitating the second removal of the third data comprises facilitating an efficiency of data deduplication in a geographically distributed environment.

12. A system, comprising:

a processor; and

a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising:

facilitating a first deduplication of first data at a first storage device based on a determination that the first storage device comprises duplicated data;

sending a request for a second deduplication at a second storage device after completion of the first deduplication at the first storage device;

facilitating the second deduplication of second data at the second storage device, wherein the second data comprises a copy of the duplicated data;

temporarily halting the first deduplication and the second deduplication based on a detection of a collision caused by the first deduplication and the second deduplication being performed at a same time; and

resuming the first deduplication and the second deduplication after a defined amount of time after the detection of the collision.

13. The system of claim 12 , wherein the operations further comprise:

facilitating the first deduplication based on an inline deduplication that replaces the duplicated data with a reference to the first data.

14. The system of claim 12 , wherein the operations further comprise facilitating the second deduplication based on a post-process deduplication that replaces the second data with a reference to the first data at the first storage device.

15. The system of claim 12 , wherein the operations further comprise:

maintaining at the first storage device, a first index of fingerprints for the first data; and

maintaining at the second storage device, a second index of fingerprints for the second data.

16. The system of claim 12 , wherein the first storage device and the second storage device are storage devices of an elastic cloud storage system.

17. A non-transitory computer-readable medium comprising instructions that, in response to execution, cause a system comprising a processor to perform operations, comprising:

facilitating a first removal of first data at a first device based on a determination that the first data is duplicate data of second data at the first device;

facilitating a second removal of third data at a second device, wherein the third data is the duplicate data of the second data, wherein the facilitating the second removal is based on a request to remove the duplicate data, and wherein the first device was alerted to the duplicate data based on a replication request from the second device to replicate the third data at the first device;

temporarily halting the first removal and the second removal based on a detection of a collision caused by the first removal and the second removal being performed at a same time; and

resuming the first removal and the second removal after a defined amount of time after the detection of the collision.

18. The non-transitory computer-readable medium of claim 17 , wherein the operations further comprise:

designating the second data at the first device as immutable data, wherein the immutable data is used to resolve deduplication conflicts.

19. The non-transitory computer-readable medium of claim 17 , wherein the operations further comprise:

maintaining a first identification for the first data, and a second identification of the second data at the first device; and

maintaining a third identification for the third data at the second device.

20. The non-transitory computer-readable medium of claim 17 , wherein the operations further comprise:

facilitating the first removal of the first data using an inline deduplication that replaces the first data with a first reference to the second data; and

facilitating the second removal of the third data based on a post-process deduplication that replaces the third data with a second reference to the second data at the first device.

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 (044535/0109) 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 060753/0414 →
RELEASE OF SECURITY INTEREST AT REEL 044535 FRAME 0001 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/0475 →
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 Nov 29, 2017
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 044535/0109 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Nov 29, 2017
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 044535/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2017
From: DANILOV, MIKHAIL; GUSAKOV, KIRILL
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 043922/0615 →