IP Library Granted Patent US 9,323,760
Granted Patent B1
US 9,323,760 · App. 13/841,234 · Granted Apr 26, 2016

Intelligent snapshot based backups

Inventors: Shelesh Chopra (Bangalore, IN); Eric Christian Matthies (Millis, MA); Christopher Francis Wroten (Franklin, MA)
Assignee: EMC Corporation
G06F17/30088
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,323,760
App. No.
13/841,234
Granted
Apr 26, 2016
Kind
B1
Abstract

This disclosure relates to a method, article of manufacture, and apparatus for intelligently determining snapshot method during snapshot based backup. In some embodiments, this includes at a second time instance, calculating a data change rate since a first time instance, obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions, determining a snapshot method based on the data change rate and the policies, and performing a snapshot using the snapshot method.

Claims (73)

1. A method comprising:

at a second time instance, calculating a data change rate since a first time instance;

obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions;

determining a snapshot method based on the data change rate and the policies; and

performing a snapshot using the snapshot method, wherein a first policy specifies a first snapshot method to be performed when a first condition is satisfied, the first condition specifying a first data change rate, and wherein a second policy specifies a second snapshot method, different from the first snapshot method, to be performed when a second condition is satisfied, the second condition specifying a second data change rate, different from the first data change rate.

2. The method as recited in claim 1 , wherein determining the snapshot method based on the data change rate and the policies comprises:

finding a policy, wherein the policy has conditions satisfied by the data change rate; and

obtaining the snapshot method based on the backup method specified by the policy.

3. The method as recited in claim 1 , wherein performing the snapshot using the snapshot method comprises:

pairing a source and one or more targets using the snapshot method;

producing the snapshot of the source using the snapshot method; and

storing the snapshot on the one or more targets.

4. The method as recited in claim 1 , wherein calculating the data change rate includes calculating the data change rate at filesystem level.

5. The method as recited in claim 1 , wherein calculating the data change rate includes calculating the data change rate at block level.

6. A storage system comprising:

a source;

a storage group configured to include one or more targets;

a server configured to back up the source at a plurality of time instances and store backups to at least one target within the storage group;

a resource database coupled with the server for storing policies, wherein each of the policies specifies a backup method and one or more corresponding conditions, wherein a first policy specifies a first snapshot method to be performed when a first condition is satisfied, the first condition specifying a first data change rate, and wherein a second policy specifies a second snapshot method, different from the first snapshot method, to be performed when a second condition is satisfied, the second condition specifying a second data change rate, different from the first data change rate; and

a backup application executed by the server configured to calculate a data change rate between two time instances among the plurality of time instances, obtain the policies from the resource database, determine a snapshot method based on the data change rate and the policies, and perform a snapshot using the snapshot method.

7. The system as recited in claim 6 , wherein the system provides a user interface providing one or more criteria containing the backup method and the one or more corresponding conditions of the policies, wherein a selection of a criteria results in storing one or more policies in the resource database.

8. The system as recited in claim 6 , wherein the storage group includes the source.

9. The system as recited in claim 6 , wherein the source includes a plurality of sources.

10. A computer program product comprising a non-transitory computer usable medium having machine readable code embodied therein for:

at a second time instance, calculating a data change rate indicating an amount of data that has changed since a first time instance;

obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions, wherein a first policy specifies a first snapshot method to be performed when a first corresponding condition comprising a first data change rate is satisfied, and wherein a second policy specifies a second snapshot method, different from the first snapshot method, to be performed when a second corresponding condition comprising a second data change rate, different from the first data change rate, is satisfied;

determining whether the data change rate satisfies the first or second corresponding condition;

if the data change rate satisfies the first corresponding condition, selecting the first snapshot method to be performed;

if the data change rate satisfies the second corresponding condition, selecting the second snapshot method to be performed; and

performing a snapshot using the selected snapshot method.

11. A method comprising;

at a second time instance, calculating a data change rate since a first time instance;

obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions;

determining a snapshot method based on the data change rate and the policies; and

performing a snapshot using the snapshot method, wherein a first policy specifies a first snapshot method and a corresponding first condition, the first condition specifying a first maximum amount of data that is allowed to be changed for the first condition to be satisfied, wherein a second policy specifies a second snapshot method, different from the first snapshot method, and wherein the determining a snapshot comprises:

determining whether the data change rate is below the first maximum amount of data that is allowed to be changed for the first condition to be satisfied;

if the data change rate is below the first maximum amount, selecting the first snapshot method as the snapshot method to be performed; and

if the data change rate is above the first maximum amount, selecting the second snapshot method as the snapshot method to be performed.

12. A method comprising:

at a second time instance, calculating a data change rate since a first time instance;

obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions;

determining a snapshot method based on the data change rate and the policies; and

performing a snapshot using the snapshot method, wherein a first policy specifies a first snapshot method and a corresponding first condition, the first condition specifying a first minimum amount of data that must be changed for the first condition to be satisfied, wherein a second policy specifies a second snapshot method, different from the first snapshot method, and wherein the determining a snapshot comprises:

determining whether the data change rate is above the first minimum amount of data that must be changed for the first condition to be satisfied;

if the data change rate is above the first minimum amount, selecting the first snapshot method as the snapshot method to be performed; and

if the data change rate is below the first minimum amount, selecting the second snapshot method as the snapshot method to be performed.

13. A method comprising;

at a second time instance, calculating a data change rate since a first time instance;

obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions;

determining a snapshot method based on the data change rate and the policies; and

performing a snapshot using the snapshot method, wherein a first policy specifies a first snapshot method to be performed when a first corresponding condition comprising a first data change rate is satisfied, and wherein a second policy specifies a second snapshot method, different from the first snapshot method, to be performed when a second corresponding condition comprising a second data change rate, different from the first data change rate, is satisfied, and the determining a snapshot method comprises:

determining whether the data change rate satisfies the first or second corresponding condition;

if the data change rate satisfies the first condition, selecting the first snapshot method to perform; and

if the data change rate satisfies the second condition, selecting the second snapshot method to perform.

14. A method comprising;

at a second time instance, calculating a data change rate since a first time instance;

obtaining policies, wherein each of the policies specifies a backup method and one or more corresponding conditions;

determining a snapshot method based on the data change rate and the policies; and

performing a snapshot using the snapshot method, wherein a first policy specifies a first snapshot method and a corresponding first condition, the first condition specifying a first minimum amount of data that must be changed and a first maximum amount of data allowed to be changed for the first condition to be satisfied, and wherein a second policy specifies a second snapshot method, different from the first snapshot method, and a corresponding second condition, different from the first condition, and the method comprises:

determining whether the data change rate falls between the first minimum amount and the first maximum amount;

if the data change rate falls between the first minimum amount and the first maximum amount, selecting the first snapshot method to perform; and

if the data change rate falls outside the first minimum amount and the first maximum amount, selecting the second snapshot method to perform.

15. The method of claim 13 , wherein determining the snapshot method based on the data change rate and the policies comprises:

finding a policy, wherein the policy has conditions satisfied by the data change rate; and

obtaining the snapshot method based on the backup method specified by the policy.

16. The method of claim 13 , wherein performing the snapshot using the snapshot method comprises:

pairing a source and one or more targets using the snapshot method;

producing the snapshot of the source using the snapshot method; and

storing the snapshot on the one or more targets.

17. The method of claim 13 , wherein calculating the data change rate includes calculating the data change rate at filesystem level.

18. The method of claim 13 , wherein calculating the data change rate includes calculating the data change rate at block level.

19. The method of claim 11 , wherein calculating the data change rate includes calculating the data change rate at filesystem level.

20. The method of claim 12 , wherein calculating the data change rate includes calculating the data change rate at block level.

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 Mar 21, 2013
From: CHOPRA, SHELESH; MATTHIES, ERIC CHRISTIAN; WROTEN, CHRISTOPHER FRANCIS
To: EMC CORPORATION
Reel/Frame 030060/0233 →