IP Library › Granted Patent US 10,853,208
Granted Patent B2
US 10,853,208 · App. 16/215,971 · Granted Dec 1, 2020

Transferring a writable data set to a cloud service that is separate from the writable data set and terminate a snapshot after transfer

Inventors: Douglas E. LeCrone (Hopkinton, MA); Bruce A. Pocock (Hoschton, GA)
Assignee: EMC IP Holding Company LLC
G06F11/2082G06F3/064G06F3/065G06F3/067G06F3/0607G06F3/0617G06F3/0644G06F12/00G06F12/16G06F2201/84
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,853,208
App. No.
16/215,971
Granted
Dec 1, 2020
Kind
B2
Abstract

Transferring data from a storage device to cloud service includes initiating a snapshot of the data, accessing each block of the data corresponding to the snapshot to transfer each block to the cloud service, and terminating the snapshot after all of the blocks have been transferred to the cloud service. At least some blocks of the storage device that are modified after initiating the snapshot may be copied from the storage device to a storage pool prior to modification. Only a first modification of a particular one of the blocks of the storage device may cause the particular one of the blocks to be copied to the storage pool. Accessing each block of the data may include accessing blocks of the storage pool. Modifying a particular one of the blocks of the storage device may include modifying a corresponding block of a storage pool.

Claims (26)

1. A method of transferring data from a storage device to cloud service, comprising:

initiating a snapshot of the data at the storage device;

maintaining an initial version of each block of the data of the storage device corresponding to each block of the data prior to initiating the snapshot;

accessing each initial version of each block of the data corresponding to the snapshot to transfer each initial version of each block to the cloud service that is separate from the storage device; and

terminating the snapshot at the storage device after all of the blocks have been transferred from the storage device to the cloud service, wherein writes to the initial version of the data are prevented prior to terminating the snapshot at the storage device and wherein at least some blocks of the storage device that are modified after initiating the snapshot are copied from the storage device to a storage pool prior to modification.

2. A method, according to claim 1 , wherein only a first modification of a particular one of the blocks of the storage device causes the particular one of the blocks to be copied to the storage pool.

3. A method, according to claim 1 , wherein accessing each initial version of each block of the data includes accessing blocks of the storage pool.

4. A method, according to claim 1 , wherein modifying a particular one of the blocks of the storage device includes modifying a corresponding block of a storage pool.

5. A method, according to claim 4 , wherein accessing each initial version of each block of the data includes accessing only blocks on the storage device.

6. A method, according to claim 1 , wherein prior to initiating the snapshot, modifications directed toward the storage device cause blocks of the storage device to be modified.

7. A method, according to claim 1 , wherein following terminating the snapshot, modifications directed toward the storage device cause blocks of the storage device to be modified.

8. A method, according to claim 1 , wherein the cloud service is provided by cloud storage.

9. A method, according to claim 8 , wherein the cloud storage is publicly available.

10. A non-transitory computer readable medium containing software that transfers data from a storage device to cloud service, the software comprising:

executable code that initiates a snapshot of the data at the storage device;

executable code that maintains an initial version of each block of the data of the storage device corresponding to each block of the data prior to initiating the snapshot;

executable code that accesses each initial version of each block of the data corresponding to the snapshot to transfer each initial version of each block to the cloud service that is separate from the storage device; and

executable code that terminates the snapshot at the storage device after all of the blocks have been transferred from the storage device to the cloud service, wherein writes to the initial version of the data are prevented prior to terminating the snapshot at the storage device and wherein at least some blocks of the storage device that are modified after initiating the snapshot are copied from the storage device to a storage pool prior to modification.

11. A non-transitory computer readable medium, according to claim 10 , wherein only a first modification of a particular one of the blocks of the storage device causes the particular one of the blocks to be copied to the storage pool.

12. A non-transitory computer readable medium, according to claim 10 , wherein accessing each initial version of each block of the data includes accessing blocks of the storage pool.

13. A non-transitory computer readable medium, according to claim 1 , wherein modifying a particular one of the blocks of the storage device includes modifying a corresponding block of a storage pool.

14. A non-transitory computer readable medium, according to claim 13 , wherein accessing each initial version of each block of the data includes accessing only blocks on the storage device.

15. A non-transitory computer readable medium, according to claim 10 , wherein prior to initiating the snapshot, modifications directed toward the storage device cause blocks of the storage device to be modified.

16. A non-transitory computer readable medium, according to claim 10 , wherein following terminating the snapshot, modifications directed toward the storage device cause blocks of the storage device to be modified.

17. A non-transitory computer readable medium, according to claim 10 , wherein the cloud service is provided by cloud storage.

18. A method, according to claim 17 , wherein the cloud storage is publicly available.

Assignments (4)
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2018
From: LECRONE, DOUGLAS E.; POCOCK, BRUCE A.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 047740/0398 →
Continuity (1)
Related Publication 20200183801A1 · Jun 11, 2020