IP Library Granted Patent US 11,082,538
Granted Patent B2
US 11,082,538 · App. 16/020,939 · Granted Aug 3, 2021

Off node data compaction

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,082,538
App. No.
16/020,939
Filed
Jun 27, 2018
Granted
Aug 3, 2021
Kind
B2
Art Unit
2458
USPC
709/247
Abstract

Embodiments relate to a compacting datafiles generated by a database node using a compaction processing node with separate compute resources. The database node generates datafiles and stores the datafiles in a data store. To perform compacting of the datafiles, a snapshot of the data store is created and stored in a snapshot store separate from the data store. The compaction processing node is initiated and attached with the snapshot store. The compaction processing node generates a compacted datafile that is stored in the snapshot store. The database node replaces the data store with the snapshot store, and writes additional datafiles using the snapshot store as a new data store. The compaction processing node may be an instance of a cloud compute infrastructure that is initiated to perform the compaction to reduce compute resource usage by the database node.

Claims (50)

1. A method for compacting datafiles, comprising:

storing, by a database node of datafiles in a first data store attached with the database node;

generating a snapshot of the first data store including the datafiles;

storing the snapshot in a second data store attached with a compaction processing node, the compaction processing node being an initiated instance of a cloud compute infrastructure, the compaction processing node including first compute resources that are separate from second compute resources of the database node;

generating, by the compaction processing node, a compacted datafile by compacting the datafiles of the snapshot in the second data store, the compaction processing node being shut down subsequent to generating the compacted datafile;

storing the compacted datafile in the second data store; and

attaching the second data store including the compacted datafile to the database node; and

writing, by the database node, a second datafile in the attached second data store, the second data file being stored in the second data store with the compacted data file.

2. The method of claim 1 , further comprising, subsequent to storing the snapshot in the second data store and prior to generating the compacted datafile, initiating the compaction processing node in the cloud compute infrastructure.

3. The method of claim 1 , further comprising, subsequent to storing the datafiles in the first data store and prior to storing the snapshot in the second data store, initiating the second data store.

4. The method of claim 1 , wherein the first and second data stores are cloud storage volumes of the cloud computing infrastructure.

5. The method of claim 1 , further comprising subsequent to storing the snapshot in the second data store, detaching the first data store from the database node and shutting down the first data store.

6. The method of claim 1 , further comprising:

subsequent to storing the snapshot in the second data store, storing, by the database node, a third datafile in the first data store; and

subsequent to generating the compacted datafile and prior to attaching the second data store to the database node, storing the third datafile in the second data store.

7. The method of claim 1 , further comprising:

generating a second snapshot of the second data store including the compacted datafile and the second datafile;

storing the second snapshot in a third data store of the compute infrastructure attached with the compaction processing node of the compute infrastructure;

generating, by the compaction processing node, a second compacted datafile by compacting the compacted datafile and the second datafile in the third data store; and

attaching the third data store to the database node.

8. A system for compacting datafiles, comprising:

a first data store;

a database node attached with the first data store, the database node configured to:

store datafiles in the first data store; and

generate a snapshot of the first data store including the datafiles;

a second data store attached with a compaction processing node, the second data store configured to store the snapshot; and

the compaction processing node, the compaction processing node being an initiated instance of a cloud computing infrastructure, the compaction processing node including first compute resources that are separate from second compute resources of the database node, the compaction processing node configured to:

generate a compacted datafile by compacting the datafiles of the snapshot in the second data store;

store the compacted datafile in the second data store; and

shut down after generating the compacted datafile; and

wherein the database node is further configured to:

attach with the second data store including the compacted datafile subsequent to the compacted datafile being stored in the second data store; and

write a second datafile in the attached second data store, the second data file being stored in the second data store with the compacted data file.

9. The system of claim 8 , wherein the database node is further configured to:

store the snapshot in the second data store; and

subsequent to storing the snapshot in the second data store, initiate the compaction processing node.

10. The system of claim 9 , wherein the database node is further configured to, subsequent to the compaction processing node generating the compacted datafile, shut down the compaction processing node.

11. The system of claim 8 , wherein the database node is further configured to, subsequent to storing the datafiles in the first data store and prior to storing the snapshot in the second data store, initiate the second data store.

12. The system of claim 8 , wherein the first data store and the second data store are instances of the cloud computing infrastructure, and the first and second data stores are cloud storage volumes.

13. The system of claim 8 , wherein the database node is further configured to, subsequent to storing the snapshot in the second data store, detach the first data store from the database node and shut down the first data store.

14. The system of claim 8 , wherein the database node is further configured to:

subsequent to storing the snapshot in the second data store, store a third datafile in the first data store; and

subsequent to generating the compacted datafile and prior to attaching the second data store to the database node, store the third datafile in the second data store.

15. A non-transitory computer readable medium storing instructions that when executed by a processor cause the processor to:

store datafiles in a first data store attached with the processor;

generate a snapshot of the first data store including the datafiles;

store the snapshot in a second data store attached with a compaction processing node, the compaction processing node being an initiated instance of a cloud compute infrastructure, the compaction processing node including first compute resources that are separate from the processor;

responsive to the compaction processing node generating a compacted datafile by compacting the datafiles of the snapshot in the second data store, attach with the second data store including the compacted datafile and shut down the compaction processing node; and

write an additional datafile in the attached second data store, the additional data file being stored in the second data store with the compacted data file.

16. The non-transitory computer readable medium of claim 15 , wherein the instructions further cause the processor to, subsequent to storing the snapshot in the second data store, detach the first data store and shut down the first data store.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2025
From: DATASTAX, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 072198/0047 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBER 10148754 FROM APPLICATION NUMBER TO PATENT NUMBER PREVIOUSLY RECORDED ON REEL 71542 FRAME 865. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 20, 2025
From: FIRST-CITIZENS BANK & TRUST COMPANY
To: DATASTAX, INC.
Reel/Frame 072491/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBER 10148754 FROM APPLICATION NUMBER TO PATENT NUMBER PREVIOUSLY RECORDED ON REEL 71535 FRAME 849. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 20, 2025
From: FIRST-CITIZENS BANK & TRUST COMPANY
To: DATASTAX, INC.
Reel/Frame 072490/0899 →
RELEASE OF SECURITY INTEREST Recorded Jun 27, 2025
From: FIRST-CITIZENS BANK & TRUST COMPANY
To: DATASTAX, INC.
Reel/Frame 071542/0865 →
RELEASE OF SECURITY INTEREST Recorded Jun 26, 2025
From: FIRST-CITIZENS BANK & TRUST COMPANY
To: DATASTAX, INC.
Reel/Frame 071535/0849 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 26, 2019
From: DATASTAX, INC.
To: SILICON VALLEY BANK
Reel/Frame 049601/0124 →
SECURITY INTEREST Recorded Nov 27, 2018
From: DATASTAX, INC.
To: SILICON VALLEY BANK
Reel/Frame 047594/0865 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2018
From: KENNEDY, MATTHEW EARL
To: DATASTAX, INC.
Reel/Frame 046459/0121 →