IP Library › Granted Patent US 11,507,589
Granted Patent B2
US 11,507,589 · App. 16/853,572 · Granted Nov 22, 2022

Techniques for data retention

Inventors: Jonathan Bruce (San Rafael, CA); Eli Levine (San Francisco, CA); Simon Toens (San Francisco, CA); Ian Varley (Austin, TX)
Assignee: salesforce.com, inc.
G06F16/2471G06F16/20G06F16/245G06F16/25G06F16/258G06F16/27G06F16/284G06F16/18G06F16/21G06F16/211G06F16/214G06F16/217G06F16/219G06F16/256G06F16/289
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,507,589
App. No.
16/853,572
Granted
Nov 22, 2022
Kind
B2
Abstract

Systems and techniques for managing data in a relational database environment and a non-relational database environment. Data in the relational database environment that is static and to be maintained beyond a preselected threshold length of time is identified. The data is copied from the relational database and stored in the data the non-relational database. Access to the data is provided from the non-relational database via a user interface that accesses both the relational database and the non-relational database.

Claims (50)

1. A method, comprising:

obtaining a data retention configuration associated with a tenant of a multitenant computing environment, the data retention configuration indicating one or more parameters defining data to be copied from a relational database to a non-relational database;

identifying, using the data retention configuration, first data associated with the tenant;

copying the first data from the relational database;

storing the copied first data to the non-relational database in association with a tenant identifier of the tenant;

obtaining a query received via a user interface, the query being received in a relational database language;

transforming the query received in the relational database language to multiple scans, each scan corresponding to a row key range of multiple row key ranges of the non-relational database;

performing the multiple scans on the non-relational database;

merging results of the performed multiple scans on the non-relational database; and

providing the merged results via the user interface.

2. The method of claim 1 , wherein the data comprises field history data.

3. The method of claim 1 , further comprising:

enqueuing a message corresponding to the first data, the message including one or more parameters;

wherein the copying of the first data is performed according to the message.

4. The method of claim 1 , wherein the identifying of the first data is performed in response to detection of one or more trigger conditions.

5. The method of claim 1 , further comprising:

deleting the first data from the relational database.

6. A system, comprising:

a database system implemented using at least a server computing device, the database system configurable to cause:

obtaining a data retention configuration associated with a tenant of a multitenant computing environment, the data retention configuration indicating one or more parameters defining data to be copied from a relational database to a non-relational database;

identifying, using the data retention configuration, first data associated with the tenant;

copying the first data from the relational database;

storing the copied first data to the non-relational database in association with a tenant identifier of the tenant;

obtaining a query received via a user interface, the query being received in a relational database language;

transforming the query received in the relational database language to multiple scans, each scan corresponding to a row key range of multiple row key ranges of the non-relational database;

performing the multiple scans on the non-relational database;

merging results of the performed multiple scans on the non-relational database; and

providing the merged results via the user interface.

7. The system of claim 6 , wherein the data comprises field history data.

8. The system of claim 6 , the database system further configurable to cause:

enqueuing a message corresponding to the first data, the message including one or more parameters;

wherein the copying of the first data is performed according to the message.

9. The system of claim 6 , wherein the identifying of the first data is performed in response to detection of one or more trigger conditions.

10. The system of claim 6 , the database system further configurable to cause:

deleting the first data from the relational database.

11. A computer program product comprising computer-readable program code capable of being executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code comprising computer-readable instructions configurable to cause:

obtaining a data retention configuration associated with a tenant of a multitenant computing environment, the data retention configuration indicating one or more parameters defining data to be copied from a relational database to a non-relational database;

identifying, using the data retention configuration, first data associated with the tenant;

copying the first data from the relational database;

storing the copied first data to the non-relational database in association with a tenant identifier of the tenant;

obtaining a query received via a user interface, the query being received in a relational database language;

transforming the query received in the relational database language to multiple scans, each scan corresponding to a row key range of multiple row key ranges of the non-relational database;

performing the multiple scans on the non-relational database;

merging results of the performed multiple scans on the non-relational database; and

providing the merged results via the user interface.

12. The computer program product of claim 11 , wherein the data comprises field history data.

13. The computer program product of claim 11 , the program code comprising computer-readable instructions configurable to cause:

enqueuing a message corresponding to the first data, the message including one or more parameters;

wherein the copying of the first data is performed according to the message.

14. The computer program product of claim 11 , wherein the identifying of the first data is performed in response to detection of one or more trigger conditions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2020
From: BRUCE, JONATHAN; LEVINE, ELI; TOENS, SIMON; VARLEY, IAN
To: SALESFORCE.COM, INC.
Reel/Frame 053447/0481 →
Continuity (7)
Continuation 14542353 · Nov 14, 2014
Provisional Application 61905457 · Nov 18, 2013
Provisional Application 61905460 · Nov 18, 2013
Provisional Application 61905439 · Nov 18, 2013
Provisional Application 61904822 · Nov 15, 2013
Provisional Application 61904826 · Nov 15, 2013
Related Publication 20200320071A1 · Oct 8, 2020