IP Library Granted Patent US 11,947,428
Granted Patent B2
US 11,947,428 · App. 17/456,339 · Granted Apr 2, 2024

Archive control techniques for database systems

Inventors: Steven Raspudic (Walnut Creek, CA); Hefeng Yuan (Sammamish, WA); Jeffrey Alexander Zoch (San Francisco, CA); Goutham Meruva (Danville, CA); Praveenkumar Bagavathiraj (San Jose, CA)
Assignee: Salesforce, Inc.
G06F11/1466G06F11/1453G06F11/1471G06F11/3452G06F16/113
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,947,428
App. No.
17/456,339
Granted
Apr 2, 2024
Kind
B2
Abstract

Techniques are disclosed relating to archive operations for database systems. In some embodiments, a database system initiates one or more archive operations to archive one or more data extents for a database maintained by the database system. The system may halt archive activity for the database, in response to determining that archive operations for a threshold amount of data extents are initiated but not completed. The system may cancel at least one of the one or more archive operations. The system may determine to resume activity for the database based on determining that a threshold timer interval has elapsed and determining that a threshold amount of storage space is available for the database system. Disclosed embodiments may improve database availability, relative to traditional techniques.

Claims (64)

1. A method, comprising:

initiating, by a database system, one or more backup operations to backup multiple data extents for a database maintained by the database system;

halting backup activity for the database, by the database system, in response to determining that backup operations for a threshold amount of data extents are in a first state in which a backup operation has been initiated for the data extent but not completed;

canceling, by the database system, at least one of the one or more backup operations; and

determining, by the database system, to resume backup activity for the database based on:

determining that a threshold timer interval has elapsed; and

determining that a threshold amount of storage space is available for the database system.

2. The method of claim 1 , wherein the database is maintained by the database system using a log-structured merge-tree (LSM tree) and the data extents are elements of the LSM tree that are duplicated by the database system when generating a backup snapshot of the database.

3. The method of claim 2 , further comprising:

deleting one or more duplicate extents that were generated for one or more canceled backup operations.

4. The method of claim 1 , further comprising:

storing, by the database system, different halt thresholds for different databases maintained by the database system;

halting backup activity for a second database, by the database system, in response to determining that backup operations for a different threshold amount of data extents are in the first state, wherein the second database has a different retention priority than the database; and

canceling, by the database system, one or more backup operations for the second database.

5. The method of claim 1 , further comprising, in response to the determining that backup operations for the threshold amount of data extents are in the first state:

deleting, by the database system, a backup log window;

in response to a threshold time interval elapsing, the database system, transitioning to a half-open operating state;

triggering, by the database system, a full backup of the database in the half-open operating state; and

in response to successful completion of the full backup, the database system transitioning to a default operating state.

6. The method of claim 5 , wherein the transitioning to the half-open state is further based on a determination that a threshold amount of storage space is available.

7. The method of claim 1 , wherein the halting is further based on determining that less than a threshold amount of storage space is available.

8. The method of claim 1 , further comprising:

storing, by the database system, historical data that indicates database status information for one or more prior backup halt operations; and

dynamically adjusting, by the database system, the threshold amount of data extents for halting backup operations for the database, based on the historical data.

9. The method of claim 8 , wherein the dynamically adjusting is performed by a machine learning module.

10. A non-transitory computer-readable medium having computer instructions stored thereon that are capable of being executed by a computer system to cause operations comprising:

initiating one or more backup operations to backup multiple data extents for a database maintained by a database system;

halting backup activity for the database, in response to determining that backup operations for a threshold amount of data extents are in a first state in which a backup operation has been initiated for the data extent but not completed;

canceling at least one of the one or more backup operations; and

determining to resume backup activity for the database based on:

determining that a threshold timer interval has elapsed; and

determining that a threshold amount of storage space is available for the database system.

11. The non-transitory computer-readable medium of claim 10 , wherein the database is maintained by the database system using a log-structured merge-tree (LSM tree) and the data extents are elements of the LSM tree that are duplicated when generating a backup snapshot of the database.

12. The non-transitory computer-readable medium of claim 11 , wherein the operations further comprise:

deleting one or more duplicate extents that were generated for one or more canceled backup operations.

13. The non-transitory computer-readable medium of claim 10 , wherein the operations further comprise:

storing different halt thresholds for different databases maintained by the database system;

halting backup activity for a second database in response to determining that backup operations for a different threshold amount of data extents are in the first state, wherein the second database has a different retention priority than the database; and

canceling one or more backup operations for the second database.

14. The non-transitory computer-readable medium of claim 10 , wherein the operations further comprise:

deleting a backup log window;

in response to a threshold time interval elapsing, transitioning to a half-open operating state;

triggering a full backup of the database in the half-open operating state; and

in response to successful completion of the full backup, transitioning to a default operating state.

15. The non-transitory computer-readable medium of claim 10 , wherein the halting is further based on determining that less than a threshold amount of storage space is available.

16. The non-transitory computer-readable medium of claim 10 , wherein the operations further comprise:

storing historical data that indicates database status information for one or more prior backup halt operations; and

dynamically adjusting the threshold amount of data extents for halting backup operations for the database, based on the historical data.

17. A system, comprising:

one or more processors; and

one or more memories having program instructions stored thereon that are capable of being executed by the one or more processors to:

initiate one or more backup operations to backup multiple data extents for a database maintained by the system;

halt backup activity for the database, in response to determining that backup operations for a threshold amount of data extents are in a first state in which a backup operation has been initiated for the data extent but not completed;

cancel at least one of the one or more backup operations; and

determine to resume backup activity for the database based on:

a determination that a threshold timer interval has elapsed; and

a determination that a threshold amount of storage space is available for the system.

18. The system of claim 17 , wherein the database is maintained by the system using a log-structured merge-tree (LSM tree) and the data extents are elements of the LSM tree that the system is configured to duplicate when generating a backup snapshot of the database.

19. The system of claim 17 , wherein the system is configured to store different backup halt thresholds for different databases maintained by the database system.

20. The system of claim 17 , wherein the instructions are further capable of being executed to:

delete a backup log window;

in response to a threshold time interval elapsing, transition to a half-open operating state;

trigger a full backup of the database in the half-open operating state; and

in response to successful completion of the full backup, transition to a default operating state.

Assignments (2)
CHANGE OF NAME Recorded Feb 28, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 066702/0584 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2021
From: RASPUDIC, STEVEN; YUAN, HEFENG; ZOCH, JEFFREY ALEXANDER; MERUVA, GOUTHAM; BAGAVATHIRAJ, PRAVEENKUMAR
To: SALESFORCE.COM, INC.
Reel/Frame 058199/0574 →
Continuity (1)
Related Publication 20230161672A1 · May 25, 2023