IP Library Granted Patent US 10,445,185
Granted Patent B1
US 10,445,185 · App. 14/683,632 · Granted Oct 15, 2019

Version mapped incremental backups

Inventor: Srineet Sridharan (Pune, IN)
Assignee: Veritas Technologies LLC
G06F11/1451G06F16/128G06F16/1873G06F2201/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,445,185
App. No.
14/683,632
Granted
Oct 15, 2019
Kind
B1
Abstract

A method to create a version map to represent the data state of a file at a particular point in time when an incremental backup is performed. In one embodiment, a logical memory backup file is created that is known as a cumulative data file. Changes to the cumulative data file according to one embodiment of the present invention include appending copies of modified data when the modified data meets a certain condition. A new version map may be created each time an incremental backup occurs. Locations of both modified and unmodified data in the backup data file are mapped for future reference to the data.

Claims (64)

1. A method of restoring data from a logical memory, the method comprising:

receiving a request to restore a file,

selecting a first version map and a cumulative data file (CDF), wherein

the CDF comprises original unmodified data, modified data, and an available storage portion, and

the first version map comprises a plurality of extent specifiers, wherein each of the plurality of extent specifiers identifiers a region of the logical memory corresponding to either the original unmodified data, the modified data, or a region of the available storage portion;

accessing the first version map;

reorganizing the extent specifiers to correspond to an order in which the regions of the logical memory are stored, wherein

the order enables restoration of a file using a single, linear pass of a storage medium; and

restoring the file, wherein

the restoring comprises copying data from the logical memory according to the extent specifiers by performing a single, linear pass of the storage medium.

2. The method of claim 1 , wherein

each map among a plurality of maps represents a data state of a file at a different particular point in time.

3. The method of claim 1 , further comprising:

retrieving mapped data portions from the logical memory in an order that the mapped data portions appear in the logical memory.

4. The method of claim 1 , further comprising:

retrieving data portions from the logical memory in the order that the data portions appear in the logical memory regardless of whether the data portions hold a copy of a modified first portion.

5. The method of claim 1 , further comprising:

retrieving mapped data portions from the logical memory in an order that the mapped data portions appear in a file being restored.

6. A non-transitory computer-readable storage medium comprising instructions executable by one or more processors to:

subsequent to a cumulative data file (CDF) and a first version map having been created, receive a request to restore a file, wherein

the CDF was created based on data that had not been modified since a previous backup (“unmodified data”),

the CDF was subsequently modified based on data that had been modified since the previous backup (“modified data”),

the first version map was created based on the unmodified data, and

a second version map was subsequently created on the modified data;

select the CDF and the first version map, wherein

the CDF comprises the unmodified data, the modified data, and an available storage portion, and

the first version map comprises a plurality of extent specifiers, wherein

each of the plurality of extent specifiers identifies a region of a logical memory corresponding to either the original unmodified data and a region of the available storage portion;

access the first version map;

reorganize the extent specifiers to correspond to an order in which the regions of the logical memory are stored, wherein

the order enables restoration of a file using a single, linear pass of a storage medium; and

restore the file, wherein

restoring the file comprises copying data from the logical memory according to the extent specifiers by performing a single, linear pass of the storage medium.

7. The non-transitory computer-readable storage medium of claim 6 , wherein

each map among a plurality of maps represents a data state of a file at a different particular point in time.

8. The non-transitory computer-readable storage medium of claim 6 , wherein the instructions are further executable to:

retrieve mapped data portions from the logical memory in an order that the mapped data portions appear in the logical memory.

9. The non-transitory computer-readable storage medium of claim 6 , wherein the instructions are further executable to:

retrieve data portions from the logical memory in the order that the data portions appear in the logical memory regardless of whether the data portions hold a copy of a modified first portion.

10. The non-transitory computer-readable storage medium of claim 6 , wherein the instructions are further executable to:

retrieve mapped data portions from the logical memory in an order that the mapped data portions appear in a file being restored.

11. A system comprising:

one or more processors; and

a memory coupled to the one or more processors, wherein the memory stores program instructions executable by the one or more processors to:

subsequent to a cumulative data file (CDF) and a first version map having been created, receive a request to restore a file, wherein

the CDF was created based on data that had not been modified since a previous backup (“unmodified data”),

the CDF was subsequently modified based on data that had been modified since the previous backup (“modified data”),

the first version map was created based on the unmodified data, and

a second version map was subsequently created on the modified data;

select the CDF and the first version map, wherein

the CDF comprises the unmodified data, the modified data, and an available storage portion, and

the first version map comprises a plurality of extent specifiers, wherein

each of the plurality of extent specifiers identifies a region of a logical memory corresponding to either the original unmodified data and a region of the available storage portion;

access the first version map;

reorganize the extent specifiers to correspond to an order in which the regions of the logical memory are stored, wherein

the order enables restoration of a file using a single, linear pass of a storage medium; and

restore the file, wherein

restoring the file comprises copying data from the logical memory according to the extent specifiers by performing a single, linear pass of the storage medium.

12. The system of claim 11 , wherein

each map among a plurality of maps represents a data state of a file at a different particular point in time.

13. The system of claim 11 , wherein the instructions are further executable to:

retrieve data portions from the logical memory in the order that the data portions appear in the logical memory regardless of whether the data portions hold a copy of a modified first portion.

14. The system of claim 11 , wherein the instructions are further executable to:

retrieve mapped data portions from the memory in an order that the mapped data portions appear in a file being restored.

Assignments (12)
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038483/0203 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037693/0158 →
Continuity (2)
Continuation 11392382 · Mar 29, 2006
Continuation 11262568 · Oct 31, 2005