IP Library Granted Patent US 9,311,190
Granted Patent B1
US 9,311,190 · App. 14/733,611 · Granted Apr 12, 2016

Capturing post-snapshot quiescence writes in a linear image backup chain

Inventors: Nathan S. Bushman (Pleasant Grove, UT); Scott Barnes (Draper, UT)
Assignee: STORAGECRAFT TECHNOLOGY CORPORATION
G06F11/1446G06F17/30678G06F17/30864G06F2201/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 9,311,190
App. No.
14/733,611
Granted
Apr 12, 2016
Kind
B1
Abstract

Capturing post-snapshot quiescence writes in a linear image backup chain. In one example embodiment, a method for capturing post-snapshot quiescence writes in a linear image backup chain may include taking a first snapshot of a source storage at a first point in time, identifying a first set of block positions of blocks that are allocated in the source storage at the first point in time, identifying a second set of block positions of blocks that are written to the first snapshot during post-snapshot quiescence of the first snapshot, resulting in a first quiesced snapshot, copying the blocks in the first set of block positions from the first snapshot to a full image backup, and copying the blocks in the second set of block positions from the first quiesced snapshot to a first incremental image backup.

Claims (55)

1. A method for capturing post-snapshot quiescence writes in a linear image backup chain, the method performed by one or more processors on a source storage, the method comprising:

taking a first snapshot of the source storage at a first point in time;

identifying a first set of block positions of blocks that are allocated in the source storage at the first point in time;

identifying a second set of block positions of blocks that are written to the first snapshot during post-snapshot quiescence of the first snapshot, resulting in a first quiesced snapshot;

copying the blocks in the first set of block positions from the first snapshot to a full image backup;

copying the blocks in the second set of block positions from the first quiesced snapshot to a first incremental image backup that depends on the full image backup;

tracking a third set of block positions of the blocks that are modified in the source storage between the first point in time and a second point in time;

taking a second snapshot of the source storage at the second point in time;

identifying a fourth set of block positions of the blocks that are allocated in the source storage at the second point in time;

identifying a fifth set of block positions of blocks that are written to the second snapshot during post-snapshot quiescence of the second snapshot, resulting in a second quiesced snapshot;

calculating a sixth set of block positions by performing a Boolean OR operation on the second set of block positions and the third set of block positions;

calculating a seventh set of block positions by performing a Boolean AND operation on the fourth set of block positions and the sixth set of block positions;

copying the blocks in the seventh set of block positions from the second snapshot to a second incremental image backup that depends on the first incremental image backup; and

copying the blocks in the fifth set of block positions from the second quiesced snapshot to a third incremental image backup that depends on the first incremental image backup.

2. The method as recited in claim 1 , wherein the taking of the first snapshot and the taking of the second snapshot are performed by a Volume Shadow Copy Service (VSS).

3. The method as recited in claim 2 , wherein the post-snapshot quiescence of the first snapshot and the post-snapshot quiescence of the second snapshot are performed by the VSS or by a VSS Writer.

4. The method as recited in claim 3 , wherein the VSS Writer is an Active Directory (AD) service or a Hyper-V hypervisor.

5. One or more non-transitory computer-readable media storing one or more programs that are configured, when executed, to cause the one or more processors to perform the method as recited in claim 1 .

6. A method for capturing post-snapshot quiescence writes in a linear image backup chain, the method performed by one or more processors on a source storage, the method comprising:

taking a first snapshot of a source storage at a first point in time;

identifying a first set of block positions of blocks that are written to the first snapshot during post-snapshot quiescence of the first snapshot, resulting in a first quiesced snapshot;

tracking a second set of block positions of the source blocks that are modified in the source storage between the first point in time and a second point in time;

taking a second snapshot of the source storage at the second point in time;

identifying a third set of block positions of the blocks that are allocated in the source storage at the second point in time;

identifying a fourth set of block positions of blocks that are written to the second snapshot during post-snapshot quiescence of the second snapshot, resulting in a second quiesced snapshot;

calculating a fifth set of block positions by performing a Boolean OR operation on the first set of block positions and the second set of block positions;

calculating a sixth set of block positions by performing a Boolean AND operation on the third set of block positions and the fifth set of block positions;

copying the blocks in the sixth set of block positions from the second snapshot to a first incremental image backup; and

copying the blocks in the fourth set of block positions from the second quiesced snapshot to a second incremental image backup that depends on the first incremental image backup.

7. The method as recited in claim 6 , wherein the taking of the first snapshot and the taking of the second snapshot are performed by a Volume Shadow Copy Service (VSS).

8. The method as recited in claim 7 , wherein the post-snapshot quiescence of the first snapshot and the post-snapshot quiescence of the second snapshot are performed by the VSS or by a VSS Writer.

9. The method as recited in claim 8 , wherein the VSS Writer is an Active Directory (AD) service or a Hyper-V hypervisor.

10. One or more non-transitory computer-readable media storing one or more programs that are configured, when executed, to cause the one or more processors to perform the method as recited in claim 6 .

11. A method for capturing post-snapshot quiescence writes in a linear image backup chain, the method performed by one or more processors on a source storage, the method comprising:

taking a first snapshot of a source storage at a first point in time;

identifying a first file system block allocation map (FSBAM) of the source storage from the first point in time, the first FSBAM identifying block positions of blocks that are allocated in the source storage at the first point in time;

accessing a first quiescence map of the first snapshot, the first quiescence map identifying block positions of blocks that are written to the first snapshot during post-snapshot quiescence of the first snapshot, resulting in a first quiesced snapshot;

copying the blocks identified in the first FSBAM from the first snapshot to a full image backup;

copying the blocks identified in the first quiescence map from the first quiesced snapshot to a first incremental image backup that depends on the full image backup;

tracking, in a modify map, block positions of the blocks that are modified in the source storage between the first point in time and a second point in time;

taking a second snapshot of the source storage at the second point in time;

accessing a second FSBAM of the source storage from the second point in time, the second FSBAM identifying block positions of the blocks that are allocated in the source storage at the second point in time;

accessing a second quiescence map of the second snapshot, the second quiescence map identifying block positions of quiescence blocks that are written to the second snapshot during post-snapshot quiescence of the second snapshot, resulting in a second quiesced snapshot;

calculating block positions for a second incremental image backup by performing a Boolean OR operation on the first quiescence map and the modify map and then performing a Boolean AND operation with the second FSBAM;

copying the blocks in the block positions for the second incremental image backup from the second snapshot to the second incremental image backup that depends on the first incremental image backup; and

copying the blocks in the second quiescence map from the second quiesced snapshot to a third incremental image backup that depends on the second incremental image backup.

12. The method as recited in claim 11 , wherein the taking of the first snapshot and the taking of the second snapshot are performed by a Volume Shadow Copy Service (VSS).

13. The method as recited in claim 12 , wherein the post-snapshot quiescence of the first snapshot and the post-snapshot quiescence of the second snapshot are performed by the VSS or by a VSS Writer.

14. The method as recited in claim 13 , wherein the VSS Writer is an Active Directory (AD) service or a Hyper-V hypervisor.

15. The method as recited in claim 11 , wherein:

the first FSBAM is stored in the first snapshot; and

the second FSBAM is stored in the second snapshot.

16. The method as recited in claim 11 , wherein the full image backup is a ShadowProtect Full (SPF) image backup.

17. The method as recited in claim 16 , wherein the first, second, and third incremental image backups are ShadowProtect Incremental (SPI) image backups.

18. One or more non-transitory computer-readable media storing one or more programs that are configured, when executed, to cause the one or more processors to perform the method as recited in claim 11 .

Assignments (6)
CHANGE OF NAME Recorded Aug 16, 2024
From: STORAGECRAFT TECHNOLOGY CORPORATION
To: STORAGECRAFT TECHNOLOGY LLC
Reel/Frame 068660/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2024
From: MONROE CAPITAL MANAGEMENT ADVISORS, LLC; ARCSTOR MIDCO LLC; ARCSERVE ACQUISITION COMPANY LLC; ARCSERVE (USA) LLC; STORAGECRAFT TECHNOLOGY, LLC
To: STORAGECRAFT, LLC
Reel/Frame 068660/0208 →
SECURITY INTEREST Recorded Mar 16, 2021
From: ARCSERVE (USA) LLC; STORAGECRAFT TECHNOLOGY LLC; ZETTA, LLC
To: MONROE CAPITAL MANAGEMENT ADVISORS, LLC, AS COLLATERAL AGENT
Reel/Frame 055603/0219 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT Recorded Mar 16, 2021
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: STORAGECRAFT TECHNOLOGY CORPORATION
Reel/Frame 055614/0607 →
SECURITY AGREEMENT Recorded Apr 18, 2016
From: STORAGECRAFT TECHNOLOGY CORPORATION
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 038449/0943 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2015
From: BUSHMAN, NATHAN S.; BARNES, SCOTT
To: STORAGECRAFT TECHNOLOGY CORPORATION
Reel/Frame 035804/0715 →