IP Library Patent Application 15048737
Patent Application
App. No. 15/048,737

CAPTURING POST-SNAPSHOT QUIESCENCE WRITES IN A BRANCHING IMAGE BACKUP CHAIN

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 None
App. No.
15/048,737
Abstract

Capturing post-snapshot quiescence writes in a branching image backup chain. In one example embodiment, a method for capturing post-snapshot quiescence writes in a branching 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, 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 AND operation on the third set of block positions and the fourth set of block positions, copying the blocks in the sixth set of block positions from the second snapshot to a second incremental image backup that depends on the full 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 second incremental image backup.

Claims (53)

1 . A method for capturing post-snapshot quiescence writes in a branching image backup chain, 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 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 AND operation on the third set of block positions and the fourth set of block positions;

copying the blocks in the sixth set of block positions from the second snapshot to a second incremental image backup that depends on the full 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 second 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 (VS S).

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 2 , wherein the post-snapshot quiescence of the first snapshot and the post-snapshot quiescence of the second snapshot are performed by a VSS Writer.

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

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

7 . A method for capturing post-snapshot quiescence writes in a branching image backup chain, the method comprising:

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

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

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

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

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

copying the blocks in the fourth set of block positions from the snapshot to a first incremental image backup that depends on an image backup that represents the state of the source storage at the first point in time; and

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

8 . The method as recited in claim 7 , wherein the taking of the snapshot is performed by a Volume Shadow Copy Service (VSS).

9 . The method as recited in claim 8 , wherein the post-snapshot quiescence of the snapshot is performed by the VSS or by a VSS Writer.

10 . The method as recited in claim 8 , wherein the post-snapshot quiescence of the snapshot is performed by a VSS Writer.

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

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

13 . A method for capturing post-snapshot quiescence writes in a branching image backup chain, 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 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 AND operation on the modify map and 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 full 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.

14 . The method as recited in claim 13 , wherein the taking of the first snapshot and the taking of the second snapshot are performed by a Volume Shadow Copy Service (VS S).

15 . The method as recited in claim 14 , 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.

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

17 . The method as recited in claim 13 , wherein:

the first FSBAM is stored in the first snapshot; and

the second FSBAM is stored in the second snapshot.

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

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

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

Assignments (3)
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 Feb 19, 2016
From: BUSHMAN, NATHAN S.
To: STORAGECRAFT TECHNOLOGY CORPORATION
Reel/Frame 037780/0402 →