IP Library Granted Patent US 11,157,367
Granted Patent B1
US 11,157,367 · App. 14/871,529 · Granted Oct 26, 2021

Promotional logic during database differential backup

Inventors: Elango Chockalingam (Bangalore, IN); Amarendra Behera (Bangalore, IN); Krishnendu Bagchi (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F11/1451G06F16/2358
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 11,157,367
App. No.
14/871,529
Filed
Sep 30, 2015
Granted
Oct 26, 2021
Kind
B1
Art Unit
2162
USPC
707/646
Abstract

Techniques to back up data are disclosed. In various embodiments, an indication to perform a differential backup of a database is received. It is verified that a full backup to be referenced by the differential backup is available on backup media. It is determined that no intervening backup was performed subsequent to the full backup that would create a risk of data loss in the event a recovery operation based on the differential backup were performed, including by ignoring any intervening backup that may have been performed but is of a type that would not give rise to such a risk of data loss. The differential backup is performed, without promoting to full backup, based on least in part on said determination.

Claims (52)

1. A method of backing up data, comprising:

receiving, by one or more processors, an indication to perform a differential backup of a database;

determining, by one or more processors, whether a full backup to be referenced by the differential backup is available on backup media;

in response to determining that the full backup is available, determining, by one or more processors, whether an intervening backup was performed subsequent to the full backup;

in response to determining that an intervening backup was performed, determining, by a backup agent executed by one or more processors, whether performing the differential backup creates a risk of data loss with respect to the intervening backup in the event a recovery operation based on the differential backup were performed, wherein:

the determining whether the performing the differential backup creates the risk of loss is based at least in part on a determination of a type of backup corresponding to the intervening backup, wherein the determining whether the performing the differential backup creates the risk of loss is further based at least in part on a determination that backup data comprised in the full backup remains available; and

in response to determining that the performing the differential backup is unable to create the risk of data loss, performing, by one or more processors, the differential backup, without promoting to full backup.

2. The method of claim 1 , further comprising promoting a backup to be performed from the differential backup to full backup based at least in part on a determination that performing the differential backup creates a risk of data loss with respect to the intervening backup.

3. The method of claim 1 , further comprising verifying that a last full backup was performed by a same vendor as the differential backup.

4. The method of claim 3 , wherein the verifying that the last full backup was performed by a same vendor as the differential backup comprises using metadata associated with the full backup to determine a backup solution used in connection with backing up the last full backup, and the metadata is obtained by calling a backup application programming interface (API) of a server that manages backup data.

5. The method of claim 1 , wherein determining whether the full backup to be referenced by the differential backup is available on backup media includes querying a backup API of the database server to determine metadata associated with a last full backup.

6. The method of claim 5 , further comprising performing a backup media query to determine a last full backup according to backup metadata maintained by a backup server.

7. The method of claim 6 , wherein determining whether the full backup to be referenced by the differential backup is available on backup media includes comparing a backup start time and a backup end time as stored by the database server with a corresponding backup start time and backup end time as indicated by the backup server.

8. The method of claim 1 , wherein the determining whether performing the differential backup creates a risk of data loss with respect to the intervening backup in the event a recovery operation comprises ignoring the intervening backup in response to a determination that the intervening backup is of a type that is unrelated to the risk of data loss.

9. The method of claim 8 , wherein ignoring the intervening backup in response to the determination that the intervening backup is of a type that is unrelated to the risk of data loss includes ignoring a transaction log backup.

10. The method of claim 1 , wherein:

the determining whether performing the differential backup creates the risk of data loss is performed for each intervening backup that was performed subsequent to the full backup, and

the differential backup is performed in response to determining that each of the intervening backups are unrelated to the risk of data loss.

11. The method of claim 1 , wherein the determining whether performing the differential backup creates a risk of data loss with respect to the intervening backup in the event a recovery operation based on the differential backup were performed comprises:

determining a type of backup to which the intervening backup corresponds, and

determining, based on the type of backup to which the intervening backup corresponds, whether performing the differential backup creates the risk of data loss with respect to the intervening backup.

12. The method of claim 1 , wherein the determining that the differential backup would not create the risk of data loss based at least in part on a determination that the intervening backup is a transaction log backup.

13. The method of claim 1 , wherein the determining whether the differential backup creates the risk of data loss with respect to the intervening backup comprises using metadata associated with the full backup to determine that the full backup was performed by the backup agent, and the metadata is obtained by calling a backup application programming interface (API) of a server that manages backup data.

14. The method of claim 1 , wherein the determining whether the differential backup creates the risk of data loss with respect to the intervening backup comprises determining that the full backup remains available on the backup media.

15. The method of claim 1 , wherein one or more of the determining that the full backup is available and the determining that the intervening backup was performed subsequent to the full backup is based at least in part on querying a database server using a backup API of the database server.

16. A system to back up data, comprising:

a memory; and

a processor coupled to the memory and configured to execute computer instructions stored in the memory to:

receive an indication to perform a differential backup of a database;

determine whether a full backup to be referenced by the differential backup is available on backup media;

in response to determining that the full backup is available, determine whether an intervening backup was performed subsequent to the full backup;

in response to determining that an intervening backup was performed, determine, by a backup agent executed by the processor, whether performing the differential backup creates a risk of data loss in the event a recovery operation based on the differential backup were performed, wherein:

the determining whether the performing the differential backup creates the risk of loss is based at least in part on a determination of a type of backup corresponding to the intervening backup, wherein the determining whether the performing the differential backup creates the risk of loss is further based at least in part on a determination that backup data comprised in the full backup remains available; and

in response to determining that the performing the differential backup would not create the risk of data loss, perform the differential backup, without promoting to full backup, wherein to perform the differential backup comprises storing corresponding information to a data storage.

17. The system of claim 16 , wherein the processor is further configured to promote a backup to be performed from the differential backup to full backup based at least in part on a determination that performing the differential backup creates a risk of data loss with respect to the intervening backup.

18. The system of claim 16 , wherein the processor is further configured to verify that a last full backup was performed by a same vendor as the differential backup.

19. The system of claim 16 , wherein determining whether the full backup to be referenced by the differential backup is available on backup media includes querying a backup API of the database server to determine metadata associated with a last full backup.

20. The system of claim 19 , wherein the processor is further configured to perform a backup media query to determine a last full backup according to backup metadata maintained by a backup server.

21. The system of claim 20 , wherein determining whether the full backup to be referenced by the differential backup is available on backup media includes comparing a backup start time and a backup end time as stored by the database server with a corresponding backup start time and backup end time as indicated by the backup server.

22. The system of claim 16 , wherein ignoring the intervening backup in response to the determination that the intervening backup is of a type that is unrelated to the risk of data loss includes ignoring a transaction log backup.

23. A computer program product to back up data, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving, by one or more processors, an indication to perform a differential backup of a database;

determining, by one or more processors, whether a full backup to be referenced by the differential backup is available on backup media;

in response to determining that the full backup is available, determining, by one or more processors, whether an intervening backup was performed subsequent to the full backup;

in response to determining that an intervening backup was performed, determining, by a backup agent executed by one or more processors, whether performing the differential backup creates a risk of data loss with respect to the intervening backup in the event a recovery operation based on the differential backup were performed, wherein:

the determining whether the performing the differential backup creates the risk of loss is based at least in part on a determination of a type of backup corresponding to the intervening backup, wherein the determining whether the performing the differential backup creates the risk of loss is further based at least in part on a determination that backup data comprised in the full backup remains available; and

in response to determining that the performing the differential backup would not create the risk of data loss, performing, by one or more processors, the differential backup, without promoting to full backup, wherein performing the differential backup comprises storing corresponding information to a data storage.

24. The computer program product of claim 23 , further comprising computer instructions for promoting a backup to be performed from the differential backup to full backup based at least in part on a determination that performing the differential backup creates a risk of data loss with respect to the intervening backup.

25. The computer program product of claim 23 , further comprising computer instructions for verifying that a last full backup was performed by a same vendor as the differential backup.

26. The computer program product of claim 23 , wherein determining whether the full backup to be referenced by the differential backup is available on backup media includes querying a backup API of the database server to determine metadata associated with a last full backup.

27. The computer program product of claim 26 , further comprising computer instructions for performing a backup media query to determine a last full backup according to backup metadata maintained by a backup server.

28. The computer program product of claim 27 , wherein determining whether the full backup to be referenced by the differential backup is available on backup media includes comparing a backup start time and a backup end time as stored by the database server with a corresponding backup start time and backup end time as indicated by the backup server.

Assignments (11)
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 Oct 27, 2015
From: BEHERA, AMARENDRA
To: EMC CORPORATION
Reel/Frame 036896/0257 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2015
From: CHOCKALINGAM, ELANGO; BAGCHI, KRISHNENDU
To: EMC CORPORATION
Reel/Frame 036698/0263 →
Cited By (1)
US 12,423,318