IP Library Granted Patent US 10,031,690
Granted Patent B1
US 10,031,690 · App. 14/108,002 · Granted Jul 24, 2018

Initializing backup snapshots on deduplicated storage

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,031,690
App. No.
14/108,002
Granted
Jul 24, 2018
Kind
B1
Abstract

The system, process, and methods herein describe a mechanism for creating an initial backup snapshot on deduplicated storage. Initialization IO's may be transmitted to the deduplicated storage, and those initialization IO's may be synthesized into a snapshot. Application IO's may also be transmitted in case the source side data changes while the backup is synthesized.

Claims (41)

1. A method for initializing a backup snapshot on deduplicated storage comprising:

receiving sequential initialization input/outputs (“IOs”) from a scanned storage volume during a continuous data replication process;

transmitting the sequential initialization IOs to the deduplicated storage, the sequential initialization IOs comprising a data stream and a metadata stream;

writing the sequential initialization IOs to a data journal and a metadata journal on the deduplicated storage that are both used to synthesize a backup snapshot on the deduplicated storage;

receiving application IOs, wherein the application IOs are writes made to the scanned storage volume;

determining a data block associated with an individual application IO;

determining whether the data block is associated with a previously streamed initialization IO;

transmitting the application IOs concurrently with the sequential initialization IOs to the deduplicated storage when the data block is associated with a previously streamed initialization IO;

writing the application IOs to the journal;

synthesizing a backup snapshot from initialization IOs and the application IOs to allow for point-in-time recovery of backed up files of the continuous data replication process by synthesizing new backup snapshots from at least one previous backup snapshot and new entries to a journal, wherein a last backup snapshot of the new backup snapshots is used to restore the storage volume up to a point-in-time of a corresponding last journal entry, and further wherein the synthesizing comprises copying or creating a data pointer to the data journal indicating only changed data for the last journal entry;

querying the metadata journal to identify most recent data associated with each offset specified by the metadata; and

defining a user policy to specify when, on a periodic basis, the new backup snapshots are taken, wherein synthesizing the backup snapshot comprises synthesizing the initialization IOs and the application IOs from the data and metadata journals into the snapshot using the most recent data, and further wherein the synthesizing comprises synthesizing the last backup snapshot entirely from journal entries rather than from an initial backup snapshot.

2. The method of claim 1 , wherein the data journal comprises data stored within an offset, and the metadata includes metadata associated with the offset, comprising at least an offset identifier, size, write time, and device ID.

3. The method of claim 1 , wherein the application IOs comprise a data stream and a metadata stream that are written to the data journal and the metadata journal.

4. A computer program product for initializing a backup snapshot on deduplicated storage, the computer program product comprising a non-transitory computer readable medium encoded with computer executable program, the program enabling:

receiving sequential initialization input/outputs (“IOs”) from a scanned storage volume during a continuous data replication process;

transmitting the sequential initialization IOs to the deduplicated storage, the sequential initialization IOs comprising a data stream and a metadata stream;

writing the sequential initialization IOs to a data journal and a metadata journal on the deduplicated storage that are both used to synthesize a backup snapshot on the deduplicated storage:

receiving application IOs, wherein the application IOs are writes made to the scanned storage volume;

determining a data block associated with an individual application IO;

determining whether the data block is associated with a previously streamed initialization IO;

transmitting the application IOs concurrently with the sequential initialization IOs to the deduplicated storage when the data block is associated with a previously streamed initialization IO;

writing the application IOs to the journal;

synthesizing a backup snapshot from initialization IOs and the application IOs to allow for point-in-time recovery of backed up files of the continuous data replication process by synthesizing new backup snapshots from at least one previous backup snapshot and new entries to a journal, wherein a last backup snapshot of the new backup snapshots is used to restore the storage volume up to a point-in-time of a corresponding last journal entry, and further wherein the synthesizing comprises copying or creating a data pointer to the data journal indicating only changed data for the last journal entry;

querying the metadata journal to identify most recent data associated with each offset specified by the metadata; and

defining a user policy to specify when, on a periodic basis, the new backup snapshots are taken, wherein synthesizing the backup snapshot comprises synthesizing the initialization IOs and the application IOs from the data and metadata journals into the snapshot using the most recent data, and further wherein the synthesizing comprises synthesizing the last backup snapshot entirely from journal entries rather than from an initial backup snapshot.

5. The computer program product of claim 4 , wherein the data journal comprises data stored within an offset, and the metadata includes metadata associated with the offset, comprising at least an offset identifier, size, write time, and device ID.

6. The computer program product of claim 4 , wherein the application IOs comprise a data stream and a metadata stream that are written to the data journal and the metadata journal.

7. A system for initializing a backup snapshot on deduplicated storage, the system comprising a computer processor configured to execute instructions comprising:

receiving sequential initialization input/outputs (“IOs”) from a scanned storage volume during a continuous data replication process;

transmitting the sequential initialization IOs to the deduplicated storage, the sequential initialization IOs comprising a data stream and a metadata stream;

writing the sequential initialization IOs to a data journal and a metadata journal on the deduplicated storage that are both used to synthesize a backup snapshot on the deduplicated storage;

determining a data block associated with an individual application IO;

determining whether the data block is associated with a previously streamed initialization IO;

transmitting the application IOs concurrently with the sequential initialization IOs to the deduplicated storage when the data block is associated with a previously streamed initialization IO;

writing the application IOs to the journal; and

synthesizing a backup snapshot from initialization IOs and the application IOs to allow for point-in-time recovery of backed up files of the continuous data replication process by synthesizing new backup snapshots from at least one previous backup snapshot and new entries to a journal, wherein a last backup snapshot of the new backup snapshots is used to restore the storage volume up to a point-in-time of a corresponding last journal entry, and further wherein the synthesizing comprises copying or creating a data pointer to the data journal indicating only changed data for the last journal entry;

querying the metadata journal to identify most recent data associated with each offset specified by the metadata; and

defining a user policy to specify when, on a periodic basis, the new backup snapshots are taken, wherein synthesizing the backup snapshot comprises synthesizing the initialization IOs and the application IOs from the data and metadata journals into the snapshot using the most recent data, and further wherein the synthesizing comprises synthesizing the last backup snapshot entirely from journal entries rather than from an initial backup snapshot.

8. The system of claim 7 , wherein the data journal comprises data stored within an offset, and the metadata includes metadata associated with the offset, comprising at least an offset identifier, size, write time, and device ID.

9. The system of claim 7 , wherein the application IOs comprise a data stream and a metadata stream that are written to the data journal and the metadata journal.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/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 Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2013
From: PANIDIS, ANESTIS; NATANZON, ASSAF; COHEN, SAAR
To: EMC CORPORATION
Reel/Frame 031792/0831 →