IP Library Granted Patent US 10,503,602
Granted Patent B2
US 10,503,602 · App. 15/870,728 · Granted Dec 10, 2019

Deletion and restoration of archived data in cloud/object storage

Inventors: Satish Kumar Kashi Visvanathan (San Jose, CA); Pooja Sarda (Cupertino, CA); Ilya Langouev (Santa Cruz, CA)
Assignee: VMware Inc.
G06F11/1435G06F3/067G06F3/0652G06F16/907H04L67/1097G06F2201/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,503,602
App. No.
15/870,728
Granted
Dec 10, 2019
Kind
B2
Abstract

Techniques for deleting a snapshot of a data set archived in cloud/object storage are provided. In one set of embodiments, a computer system can identify data blocks that are part of the snapshot and are referred to by an incremental child snapshot of the snapshot. The computer system can further create a new metadata object that includes metadata entries for the identified data blocks, each metadata entry comprising an identifier of the incremental child snapshot, an identifier of a data block, and an identifier of a data object of the incremental child snapshot where the data block is stored. The computer system can then associate the new metadata object with the incremental child snapshot in the cloud/object storage.

Claims (59)

1. A method comprising:

deleting, by a computer system, a snapshot of a data set archived in cloud storage, the deleting comprising:

identifying data blocks that are part of the snapshot and are referred to by an incremental child snapshot of the snapshot;

creating a new metadata object that includes metadata entries for the identified data blocks, each metadata entry comprising an identifier of the incremental child snapshot, an identifier of a data block, and an identifier of a data object of the snapshot where the data block is stored; and

associating the new metadata object with the incremental child snapshot in the cloud storage; and

concurrently with the deleting of the snapshot, restoring the data set from the incremental child snapshot without locking any data objects of the snapshot.

2. The method of claim 1 wherein the deleting further comprises:

deleting all metadata objects for the snapshot from the cloud storage.

3. The method of claim 1 wherein the deleting further comprises, at a later time:

identifying data objects of the snapshot that do not include any data blocks referred to by child snapshots; and

deleting the identified data objects from the cloud storage.

4. The method of claim 1 wherein the restoring comprises:

traversing up a hierarchy of snapshots needed to restore the data set from the incremental child snapshot; and

for each snapshot in the hierarchy:

if one or more metadata objects for the snapshot can be found in the cloud storage, incorporating the one or more snapshots into a metadata view for the data set; and

if one or more metadata objects for the snapshot cannot be found in the cloud storage, returning to an immediate child snapshot of the snapshot in the hierarchy and examining the immediate child snapshot to identify any new metadata objects.

5. The method of claim 1 wherein the incremental child snapshot is restored from a replicated region of the cloud storage that is different from a region of the cloud storage where the incremental child snapshot was originally uploaded.

6. The method of claim 5 wherein the restoring comprises:

verifying, prior to initiating the restore, that all objects needed for restoring the data set are present in the replicated region.

7. A non-transitory computer readable storage medium having stored thereon program code executable by a computer system, the program code embodying a method comprising:

deleting a snapshot of a data set archived in cloud storage, the deleting comprising:

identifying data blocks that are part of the snapshot and are referred to by an incremental child snapshot of the snapshot;

creating a new metadata object that includes metadata entries for the identified data blocks, each metadata entry comprising an identifier of the incremental child snapshot, an identifier of a data block, and an identifier of a data object of the snapshot where the data block is stored; and

associating the new metadata object with the incremental child snapshot in the cloud storage; and

concurrently with the deleting of the snapshot, restoring the data set from the incremental child snapshot without locking any data objects of the snapshot.

8. The non-transitory computer readable storage medium of claim 7 wherein the deleting further comprises:

deleting all metadata objects for the snapshot from the cloud storage.

9. The non-transitory computer readable storage medium of claim 7 wherein the deleting further comprises, at a later time:

identifying data objects of the snapshot that do not include any data blocks referred to by child snapshots; and

deleting the identified data objects from the cloud storage.

10. The non-transitory computer readable storage medium of claim 7 wherein the restoring comprises:

traversing up a hierarchy of snapshots needed to restore the data set from the incremental child snapshot; and

for each snapshot in the hierarchy:

if one or more metadata objects for the snapshot can be found in the cloud storage, incorporating the one or more snapshots into a metadata view for the data set; and

if one or more metadata objects for the snapshot cannot be found in the cloud storage, returning to an immediate child snapshot of the snapshot in the hierarchy and examining the immediate child snapshot to identify any new metadata objects.

11. The non-transitory computer readable storage medium of claim 7 wherein the incremental child snapshot is restored from a replicated region of the cloud storage that is different from a region of the cloud storage where the incremental child snapshot was originally uploaded.

12. The non-transitory computer readable storage medium of claim 11 wherein the restoring comprises:

verifying, prior to initiating the restore, that all objects needed for restoring the data set are present in the replicated region.

13. A computer system comprising:

a processor; and

a non-transitory computer readable medium having stored thereon program code that causes the processor to:

delete a snapshot of a data set archived in cloud storage, the deleting comprising:

identifying data blocks that are part of the snapshot and are referred to by an incremental child snapshot of the snapshot;

creating a new metadata object that includes metadata entries for the identified data blocks, each metadata entry comprising an identifier of the incremental child snapshot, an identifier of a data block, and an identifier of a data object of the incremental child snapshot where the data block is stored; and

associating the new metadata object with the incremental child snapshot in the cloud storage; and

concurrently with the deleting of the snapshot, restore the data set from the incremental child snapshot without locking any data objects of the snapshot.

14. The computer system of claim 13 wherein the deleting further comprises:

deleting all metadata objects for the snapshot from the cloud storage.

15. The computer system of claim 13 wherein the deleting further comprises, at a later time:

identifying data objects of the snapshot that do not include any data blocks referred to by child snapshots; and

deleting the identified data objects from the cloud storage.

16. The computer system of claim 13 wherein the restoring comprises:

traversing up a hierarchy of snapshots needed to restore the data set from the incremental child snapshot; and

for each snapshot in the hierarchy:

if one or more metadata objects for the snapshot can be found in the cloud storage, incorporating the one or more snapshots into a metadata view for the data set; and

if one or more metadata objects for the snapshot cannot be found in the cloud storage, returning to an immediate child snapshot of the snapshot in the hierarchy and examining the immediate child snapshot to identify any new metadata objects.

17. The computer system of claim 13 wherein the incremental child snapshot is restored from a replicated region of the cloud storage that is different from a region of the cloud storage where the incremental child snapshot was originally uploaded.

18. The computer system of claim 17 wherein the restoring comprises:

verifying, prior to initiating the restore, that all objects needed for restoring the data set are present in the replicated region.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2019
From: KASHI VISVANATHAN, SATISH KUMAR; SARDA, POOJA; LANGOUEV, ILYA
To: VMWARE, INC.
Reel/Frame 048213/0084 →
Continuity (1)
Related Publication 20190220360A1 · Jul 18, 2019