IP Library Granted Patent US 9,928,285
Granted Patent B1
US 9,928,285 · App. 13/926,899 · Granted Mar 27, 2018

Optimized cloning for backup to disk

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,928,285
App. No.
13/926,899
Granted
Mar 27, 2018
Kind
B1
Abstract

A method of backing up data includes backing up, using a processor, multiple save sets of data to a first backup data storage; obtaining a first save set from the first backup data storage after the backup of the first save set has completed on the first backup data storage; determining that the first backup data storage is capable of concurrent read and write operations; and replicating, based at least in part on the determining, the first save set onto a second backup data storage while backing up of one or more other save sets of the multiple save sets to the first backup data storage is pending.

Claims (43)

1. A method of backing up data, comprising:

backing up, using a processor, data stored on one or more client devices belonging to a savegroup to a first backup data storage, the backup data from the savegroup being divided into a plurality of save sets of data, the plurality of save sets of data forming a full backup data set, wherein the backing up comprises writing the plurality of save sets of data into the first backup data storage where at least some of the save sets of data have completed backup while backing up of other save sets of data to the first backup data storage is still in progress;

obtaining a first save set from the first backup data storage after the backup of the first save set has completed on the first backup data storage;

determining that the first backup data storage is configured to perform concurrent read and write operations where the first backup data storage is configured to perform writing of the backup data from the client devices to the first backup data storage concurrently with reading of the backup data from the first backup data storage by a second backup data storage;

in response to the determining that the first backup data storage is configured to perform concurrent read and write operations and in response to the backup of the first save set having been completed on the first backup data storage, replicating the first save set onto the second backup data storage while backing up of one or more other save sets of the plurality of save sets to the first backup data storage is still in progress;

continuing to replicate the save sets of data that have completed backup on the first backup data storage onto the second backup data storage as each save set of data has completed backup on the first backup data storage until the full backup data set is replicated to the second backup data storage, wherein backing up of the plurality of save sets of data to the first backup data storage comprises backing up the plurality of save set of data to the first backup data storage in a first assigned order and replicating the save sets of data onto the second backup data storage comprises replicating the save sets of data onto the second backup data storage in an order different than the first assigned order; and

in response to the determining that the first backup data storage is not configured to perform concurrent read and write operations, obtaining the plurality of save sets of data from the first backup data storage after the backup of the full backup data set has completed on the first backup data storage and replicating the plurality of save sets of data to the second backup data storage.

2. The method of claim 1 , further comprising:

setting a threshold for a maximum number of save sets being replicated in parallel to the second backup data storage;

storing one or more save sets in a cloning queue when the number of save sets being replicated in parallel is at or exceeds the threshold; and

replicating a save set from the cloning queue when the number of save sets being replicated in parallel is below the threshold.

3. The method of claim 1 , further comprising:

in response to the determining that the first backup data storage is not configured to perform concurrent read and write operations, storing the first save set in a queue;

obtaining and storing in the queue each save set of data of the plurality of save sets having completed backup from the first backup data storage until all of the plurality of save sets have been obtained; and

replicating the plurality of save sets of data stored in the queue onto the second backup data storage.

4. The method of claim 1 , wherein replicating the first save set onto a second backup data storage comprises:

processing backup data in the first save set into a format suitable for the second backup data storage; and

storing the processed backup data onto the second backup data storage.

5. The method of claim 1 , wherein replicating the first save set onto a second backup data storage comprises:

initiating clone controlled replication from the second backup data storage to replicate the first save set onto the second backup data storage.

6. The method of claim 1 , wherein the first backup data storage comprises a hard disk storage.

7. A system for backing up data, comprising:

a processor configured to:

back up, using a processor, data stored on one or more client devices belonging to a savegroup to a first backup data storage, the backup data from the savegroup being divided into a plurality of save sets of data, the plurality of save sets of data forming a full backup data set, wherein the backing up comprises writing the plurality of save sets of data into the first backup data storage where at least some of the save sets of data have completed backup while backing up of other save sets of data to the first backup data storage is still in progress;

obtain a first save set from the first backup data storage after the backup of the first save set has completed on the first backup data storage;

determine that the first backup data storage is configured to perform concurrent read and write operations where the first backup data storage is configured to perform writing of the backup data from the client devices to the first backup data storage concurrently with reading of the backup data from the first backup data storage by a second backup data storage;

in response to the determining that the first backup data storage is configured to perform concurrent read and write operations and in response to the backup of the first save set having been completed on the first backup data storage, replicate the first save set onto the second backup data storage while backing up of one or more other save sets of the plurality of save sets to the first backup data storage is still in progress;

continue to replicate the save sets of data that have completed backup on the first backup data storage onto the second backup data storage as each save set of data has completed backup on the first backup data storage until the full backup data set is replicated to the second backup data storage, wherein back up of the plurality of save sets of data to the first backup data storage comprises back up the plurality of save set of data to the first backup data storage in a first assigned order and replicate the save sets of data onto the second backup data storage comprises replicate the save sets of data onto the second backup data storage in an order different than the first assigned order; and

in response to the determining that the first backup data storage is not configured to perform concurrent read and write operations, obtain the plurality of save sets of data from the first backup data storage after the backup of the full backup data set has completed on the first backup data storage and replicate the plurality of save sets of data to the second backup data storage; and

a memory coupled to the processor and configured to provide the processor with instructions.

8. The system recited in claim 7 , wherein the processor is further configured to:

set a threshold for a maximum number of save sets being replicated in parallel to the second backup data storage;

store one or more save sets in a cloning queue when the number of save sets being replicated in parallel is at or exceeds the threshold; and

replicate a save set from the cloning queue when the number of save sets being replicated in parallel is below the threshold.

9. The system recited in claim 7 , wherein the processor is further configured to:

in response to the determining that the first backup data storage is not configured to perform concurrent read and write operations, store the first save set in a queue;

obtain and store in the queue each save set of data of the plurality of save sets having completed backup from the first backup data storage until all of the plurality of save sets have been obtained; and

replicate the plurality of save sets of data stored in the queue onto the second backup data storage.

10. The system recited in claim 7 , wherein the processor is further configured to:

replicate the first save set onto a second backup data storage by processing backup data in the first save set into a format suitable for the second backup data storage and storing the processed backup data onto the second backup data storage.

11. The system recited in claim 7 , wherein the processor is further configured to:

replicate the first save set onto a second backup data storage by initiating clone controlled replication from the second backup data storage to replicate the first save set onto the second backup data storage.

12. The system recited in claim 7 , wherein the first backup data storage comprises a hard disk storage.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
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 Jun 25, 2013
From: MANDIC, VLADIMIR
To: EMC CORPORATION
Reel/Frame 030684/0759 →