IP Library Granted Patent US 12,450,124
Granted Patent B2
US 12,450,124 · App. 18/600,412 · Granted Oct 21, 2025

Systems and methods for consistent backup of distributed, transactional databases

Inventor: James Baker (London, GB)
Assignee: Palantir Technologies Inc.
G06F11/1451G06F11/1464G06F16/215G06F16/2379G06F16/27G06F2201/835
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 12,450,124
App. No.
18/600,412
Granted
Oct 21, 2025
Kind
B2
Abstract

A distributed, transactional database uses timestamps, such as logical clock values, for entry versioning and transaction management in the database. To write to the database, a service requests a timestamp to be inserted into the database with a new version of data. During a backup procedure, a cleanup process is paused, issuing new timestamps is paused, and a backup timestamp is generated, which results in an effective backup copy. During a restore of a backup, a snapshot of the database is loaded and any entries older than the backup timestamp are deleted, which ensures that a consistent restore has occurred.

Claims (31)

1. A database system comprising:

a database cluster comprising a plurality of nodes, wherein each node of the plurality of nodes comprises a key-value table, and wherein each entry of a respective key-value table comprises a timestamp; and

one or more computer hardware processors configured to execute computer-executable instructions to cause the database system to at least:

receive a request to restore one or more key-value tables on the plurality of nodes;

retrieve, based on the request to restore and from a backup data store, a duplicate copy of data to be restored;

load the duplicate copy of data on a first node of the plurality of nodes; and

delete a first entry from the first node with a first timestamp more recent than a backup timestamp, wherein the backup timestamp was generated during a hold on the database system issuing new timestamps to one or more external computing devices during a backup process.

2. The database system of claim 1 , wherein the request to restore includes an indication of the first node.

3. The database system of claim 1 , wherein the request to restore includes an indication of the first timestamp.

4. The database system of claim 1 , wherein the backup timestamp is retrieved from the backup data store.

5. The database system of claim 1 , wherein loading the duplicate copy of data comprises:

changing entries of a first key-value table of the first node during a hold on writing of new entries to the first key-value table.

6. The database system of claim 1 , wherein the request to restore includes an indication of the first node and an indication of the first timestamp.

7. The database system of claim 6 , wherein the backup timestamp is retrieved from the backup data store.

8. The database system of claim 7 , wherein loading the duplicate copy of data comprises:

changing entries of a first key-value table of the first node during a hold on writing of new entries to the first key-value table.

9. A computer-implemented method comprising:

receiving a request to restore one or more key-value tables on a plurality of nodes of a database cluster, wherein each node of the plurality of nodes comprises a key-value table, and wherein each entry of a respective key-value table comprises a timestamp;

retrieving, based on the request to restore and from a backup data store, a duplicate copy of data to be restored;

loading the duplicate copy of data on a first node of the plurality of nodes; and

deleting a first entry from the first node with a first timestamp more recent than a backup timestamp, wherein the backup timestamp was generated during a hold on allowing writes from committing to the database cluster during a backup process,

wherein the computer-implemented method is performed by one or more computer hardware processors.

10. The computer-implemented method of claim 9 , wherein the request to restore includes an indication of the first node.

11. The computer-implemented method of claim 9 , wherein the request to restore includes an indication of the first timestamp.

12. The computer-implemented method of claim 9 , wherein the backup timestamp is retrieved from the backup data store.

13. The computer-implemented method of claim 9 , wherein loading the duplicate copy of data comprises:

changing entries of a first key-value table of the first node during a hold on writing of new entries to the first key-value table.

14. The computer-implemented method of claim 9 , wherein the request to restore includes an indication of the first node and an indication of the first timestamp.

15. The computer-implemented method of claim 14 , wherein the backup timestamp is retrieved from the backup data store.

16. The computer-implemented method of claim 15 , wherein loading the duplicate copy of data comprises:

changing entries of a first key-value table of the first node during a hold on writing of new entries to the first key-value table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2024
From: BAKER, JAMES
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 066891/0938 →
Continuity (4)
Continuation 17962726 · Oct 10, 2022
Continuation 17006109 · Aug 28, 2020
Provisional Application 62895374 · Sep 3, 2019
Related Publication 20240211354A1 · Jun 27, 2024
References Cited (13)
US 11500731B2 · Baker · 2022 [cited by applicant]
US 11960362B2 · Baker · 2024 [cited by applicant]
US 20110289052A1 · Rambacher et al. · 2011 [cited by applicant]
US 20180074919A1 · Lee et al. · 2018 [cited by applicant]
US 20180300205A1 · Sehgal et al. · 2018 [cited by applicant]
US 20190179711A1 · Luo et al. · 2019 [cited by applicant]
US 20200125462A1 · Zhu et al. · 2020 [cited by applicant]
US 20200250171A1 · Yin et al. · 2020 [cited by applicant]
US 20200349030A1 · Meadowcroft et al. · 2020 [cited by applicant]
US 20230031243A1 · Baker · 2023 [cited by applicant]
EP 2738697 · 2014 [cited by applicant]
U.S. Appl. No. 17/962,726, Systems and Methods for Consistent Backup of Distributed, Transactional Databases, filed Oct. 10, 2022. [cited by applicant]
Official Communication for European Patent Application No. 20193748.9 dated Feb. 5, 2021, 8 pages. [cited by applicant]