IP Library Granted Patent US 10,540,155
Granted Patent B1
US 10,540,155 · App. 15/674,861 · Granted Jan 21, 2020

Platform-agnostic predictive models based on database management system instructions

Inventors: Lawrence Spracklen (San Francisco, CA); Steven Hillion (San Francisco, CA); Michael Thyen (San Francisco, CA)
Assignee: TIBCO SOFTWARE INC.
G06F8/443G06F8/35G06F9/448G06F11/302G06F2201/865
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 10,540,155
App. No.
15/674,861
Granted
Jan 21, 2020
Kind
B1
Abstract

Platform-agnostic predictive models based on database management system instructions are described. A system identifies a representation of data transformations associated with a first predictive model that executes on a first computing platform. The system parses the representation of data transformations. The system generates database management system instructions that correspond to the parsed representation of data transformations. The system sends the database management system instructions to a second predictive model that executes on a second computing platform, thereby enabling the second predictive model to execute at least some of the database management system instructions to generate a prediction. The first computing platform and the second computing platform are different types of computing platforms.

Claims (40)

1. A system comprising:

one or more processors; and

a non-transitory computer readable medium storing a plurality of instructions, which when executed, cause the one or more processors to:

identify a representation of data transformations associated with a first predictive model that executes on a first computing platform, wherein the representation defines sequences of transformations performed on data before, during, and after application of the first predictive model;

parse the representation of data transformations;

generate database management system instructions that correspond to the parsed representation of data transformations; and

send the database management system instructions to a second predictive model that executes on a second computing platform, thereby enabling the second predictive model to execute at least some of the database management system instructions to generate a prediction, wherein the first computing platform and the second computing platform are different types of computing platforms;

wherein the parsed representation of data transformations includes pre-processing data transformations, the first predictive model's data transformation, and post-processing data transformations that can be utilized by the second predictive model to replay the sequence of transformations needed to transform data;

wherein the database management system instructions enable platform-agnostic predictive models;

wherein parsing the representation of data transformations comprises modifying a predictive analytics framework to emit database management system instructions that correspond to the representation of data transformations in response to receiving requests for functions that correspond to the representation of data transformations.

2. The system of claim 1 , wherein parsing the representation of data transformations comprises parsing the representation of data transformations when the first predictive model lacks a current execution status.

3. The system of claim 1 , wherein parsing the representation of data transformations comprises dynamically recording database management system instructions that are generated in response to the first predictive model implementing the representation of data transformations.

4. The system of claim 1 , wherein generating the database management system instructions that correspond to the parsed representation of data transformations comprises deleting some of the database management system instructions to optimize the database management system instructions, wherein some of the database management system instructions deleted include instructions associated with a structured query language.

5. The system of claim 1 , wherein generating the database management system instructions that correspond to the parsed representation of data transformations comprises identifying data upon which other data depends, and injecting the data upon which the other data depends into the database management system instructions.

6. The system of claim 1 , wherein the database management system instructions that correspond to the parsed representation of data transformations comprises code associated with a structured query language.

7. A method comprising:

identifying a representation of data transformations associated with a first predictive model that executes on a first computing platform, wherein the representation defines sequences of transformations performed on data before, during, and after application of the first predictive model;

parsing the representation of data transformations;

generating database management system instructions that correspond to the parsed representation of data transformations; and

sending the database management system instructions to a second predictive model that executes on a second computing platform, thereby enabling the second predictive model to execute at least some of the database management system instructions to generate a prediction, wherein the first computing platform and the second computing platform are different types of computing platforms;

wherein the parsed representation of data transformations includes pre-processing data transformations, the first predictive model's data transformation, and post-processing data transformations that can be utilized by the second predictive model to replay the sequence of transformations needed to transform data;

wherein the database management system instructions enable platform-agnostic predictive models;

wherein parsing the representation of data transformations comprises modifying a predictive analytics framework to emit database management system instructions that correspond to the representation of data transformations in response to receiving requests for functions that correspond to the representation of data transformations.

8. The computer-implemented method of claim 7 , wherein parsing the representation of data transformations comprises parsing the representation of data transformations when the first predictive model lacks a current execution status.

9. The computer-implemented method of claim 7 , wherein parsing the representation of data transformations comprises dynamically recording database management system instructions that are generated in response to the first predictive model implementing the representation of data transformations.

10. The computer-implemented method of claim 7 , wherein generating the database management system instructions that correspond to the parsed representation of data transformations comprises deleting some of the database management system instructions to optimize the database management system instructions, wherein some of the database management system instructions deleted include instructions associated with a structured query language.

11. The computer-implemented method of claim 7 , wherein generating the database management system instructions that correspond to the parsed representation of data transformations comprises identifying data upon which other data depends, and injecting the data upon which the other data depends into the database management system instructions.

12. The computer-implemented method of claim 7 , wherein the database management system instructions that correspond to the parsed representation of data transformations comprises code associated with a structured query language.

13. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

identify a representation of data transformations associated with a first predictive model that executes on a first computing platform, wherein the representation defines sequences of transformations performed on data before, during, and after application of the first predictive model;

parse the representation of data transformations;

generate database management system instructions that correspond to the parsed representation of data transformations; and

send the database management system instructions to a second predictive model that executes on a second computing platform, thereby enabling the second predictive model to execute at least some of the database management system instructions to generate a prediction, wherein the first computing platform and the second computing platform are different types of computing platforms;

wherein the parsed representation of data transformations includes pre-processing data transformations, the first predictive model's data transformation, and post-processing data transformations that can be utilized by the second predictive model to replay the sequence of transformations needed to transform data;

wherein the database management system instructions enable platform-agnostic predictive models;

wherein parsing the representation of data transformations comprises modifying a predictive analytics framework to emit database management system instructions that correspond to the representation of data transformations in response to receiving requests for functions that correspond to the representation of data transformations.

14. The computer program product of claim 13 , wherein parsing the representation of data transformations comprises parsing the representation of data transformations when the first predictive model lacks a current execution status.

15. The computer program product of claim 13 , wherein parsing the representation of data transformations comprises dynamically recording database management system instructions that are generated in response to the first predictive model implementing the representation of data transformations.

16. The computer program product of claim 13 , wherein generating the database management system instructions that correspond to the parsed representation of data transformations comprises deleting some of the database management system instructions to optimize the database management system instructions, wherein some of the database management system instructions deleted include instructions associated with a structured query language.

17. The computer program product of claim 13 , wherein generating the database management system instructions that correspond to the parsed representation of data transformations comprises identifying data upon which other data depends, and injecting the data upon which the other data depends into the database management system instructions, and the database management system instructions that correspond to the parsed representation of data transformations comprises code associated with a structured query language.

Assignments (16)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
CHANGE OF NAME Recorded Feb 7, 2023
From: TIBCO SOFTWARE INC.
To: CLOUD SOFTWARE GROUP, INC.
Reel/Frame 062714/0634 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
RELEASE REEL 052115 / FRAME 0318 Recorded Oct 3, 2022
From: KKR LOAN ADMINISTRATION SERVICES LLC
To: TIBCO SOFTWARE INC.
Reel/Frame 061588/0511 →
RELEASE (REEL 052096 / FRAME 0061) Recorded Sep 30, 2022
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 061575/0900 →
RELEASE (REEL 054275 / FRAME 0975) Recorded May 7, 2021
From: JPMORGAN CHASE BANK, N.A.
To: TIBCO SOFTWARE INC.
Reel/Frame 056176/0398 →
SECURITY AGREEMENT Recorded Nov 2, 2020
From: TIBCO SOFTWARE INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 054275/0975 →
SECURITY AGREEMENT Recorded Mar 6, 2020
From: TIBCO SOFTWARE INC.
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 052115/0318 →
SECURITY AGREEMENT Recorded Mar 5, 2020
From: TIBCO SOFTWARE INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 052096/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2018
From: ALPINE ANALYTICS, INC.
To: TIBCO SOFTWARE INC.
Reel/Frame 045872/0134 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2017
From: SPRACKLEN, LAWRENCE; HILLION, STEVEN; THYEN, MICHAEL
To: ALPINE DATA
Reel/Frame 043357/0382 →
Continuity (1)
Provisional Application 62373700 · Aug 11, 2016