IP Library › Granted Patent US 12,137,123
Granted Patent B1
US 12,137,123 · App. 18/779,043 · Granted Nov 5, 2024

Rapid predictive analysis of very large data sets using the distributed computational graph

Inventors: Jason Crabtree (Vienna, VA); Andrew Sellers (Monument, CO)
Assignee: QOMPLX LLC
H04L63/20G06F9/5038G06F16/2477G06F16/951H04L63/1425H04L63/1441G06F9/4881
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,137,123
App. No.
18/779,043
Granted
Nov 5, 2024
Kind
B1
Abstract

A system for predictive analysis of very large data sets using a distributed computational graph has been developed. Data receipt software receives streaming data from one or more sources. In a batch data pathway, data formalization software formats input data for storage. A batch event analysis server inspects stored data for trends, situations, or knowledge. Aggregated data is passed to message handler software. System sanity software receives status information from message handler and optimizes system performance. In the streaming pathway, transformation pipeline software manipulates the data stream, provides results back to the system, receives directives from the system sanity and retrain software.

Claims (55)

1. A system comprising:

a distributed computing cluster comprising a first plurality of computer systems and a second plurality of computer systems,

wherein the first plurality of computer systems does not comprise any computer system of the second plurality of computer systems,

wherein the second plurality of computer systems does not comprise any computer system of the first plurality of computer systems,

wherein each respective computer system of the first plurality of computer systems comprises a memory that stores a respective first data,

wherein the respective first data represents a respective portion of a distributed computational graph,

and wherein the distributed computational graph describes a flow of output data of a first transformation pipeline to an input of a second transformation pipeline,

wherein a first computer system of the first plurality of computer systems is configured to:

receive a first stream of input data from an input feed,

process the first stream of input data substantially in real time by executing first software instructions that apply the first transformation pipeline to the first stream of input data to generate first pipeline output messages,

process at least a portion of the respective first data to determine information about the second transformation pipeline,

and transmit the first pipeline output messages to a second computer system of the first plurality of computer systems in accordance with the determined information,

wherein the second computer system is configured to:

receive the first pipeline output messages,

process the first pipeline output messages substantially in real time by executing second software instructions that apply the second transformation pipeline to the first pipeline output messages to generate second pipeline output messages,

process at least a portion of the respective first data to determine information about the second transformation pipeline,

and transmit the second pipeline output messages in accordance with the determined information,

wherein a third computer system of the second plurality of computer systems is configured to execute third software instructions that:

monitor a progress of the execution of at least one of the first software instructions and the second software instructions,

wherein the monitoring includes identifying a third transformation pipeline that has become needed,

modify the first data of a fourth computer system of the first plurality of computer systems such that the respective portion of the distributed computational graph described by the first data of the fourth computer system includes a flow of output data to an input of the third transformation pipeline,

and configure a fifth computer system of the second plurality of computer systems to process third pipeline output messages by executing fourth software instructions that apply the third transformation pipeline to the third pipeline output messages,

wherein the first and second computer systems are distinct.

2. The system of claim 1 , wherein monitoring the progress of the execution includes:

receiving at least one of the first pipeline output messages and the second pipeline output messages,

and employing machine learning algorithms in response to the receiving.

3. A system comprising:

a distributed computing cluster comprising a first plurality of computer systems and a second plurality of computer systems,

wherein each respective computer system of the first plurality of computer systems comprises a respective memory that stores respective first data that:

describes a configuration of a respective first transformation pipeline,

wherein a first computer system of the first plurality computer systems is configured to:

receive a first stream of data,

process the first stream of data substantially in real time by executing first software instructions that apply the first transformation pipeline of the memory of the first computer system to the first stream of data to generate a second stream of data,

and store, substantially in real time, at least a portion of data in the second stream of data in a database,

wherein a second computer system of the first plurality of computer systems is configured to execute second software instructions that:

monitor the execution of the first software instructions,

wherein the monitoring includes identifying a second transformation pipeline that has become needed,

configure a third computer system of the second plurality of computer systems to execute third software instructions that process the second stream of data by applying the second transformation pipeline to the second stream of data, to generate a third stream of data,

and store, substantially in real time, at least a portion of data in the third stream of data in the database.

4. The system of claim 3 , wherein monitoring the execution of the first software instructions includes:

monitoring at least a portion of the second stream of data,

and employing machine learning algorithms.

5. A system comprising:

a distributed computing cluster comprising a first plurality of computer systems and a second plurality of computer systems,

wherein each respective computer system of the first plurality of computer systems comprises a respective memory that stores respective first data that:

describes a configuration of a respective first transformation pipeline,

wherein a first computer system of the first plurality computer systems is configured to:

receive a first stream of data,

process the first stream of data substantially in real time by executing first software instructions that apply the first transformation pipeline of the memory of the first computer system to the first stream of data to generate a second stream of data,

and store, substantially in real time, at least a portion of data in the second stream of data in a database,

wherein a second computer system of the first plurality of computer systems is configured to execute second software instructions that:

monitor the execution of the first software instructions,

wherein the monitoring includes identifying a second transformation pipeline that has become needed,

configure a third computer system of the second plurality of computer systems to execute third software instructions that process a third stream of data by applying the second transformation pipeline to the third stream of data, to generate a fourth stream of data,

and store, substantially in real time, at least a portion of data in the fourth stream of data in the database.

Assignments (4)
CHANGE OF NAME Recorded Sep 18, 2024
From: QPX LLC
To: QOMPLX LLC
Reel/Frame 068989/0636 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2024
From: QOMPLX, INC.
To: QPX LLC
Reel/Frame 068725/0264 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2024
From: FRACTAL INDUSTRIES, INC.
To: QOMPLX, INC.
Reel/Frame 068333/0043 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2024
From: CRABTREE, JASON; SELLERS, ANDREW
To: FRACTAL INDUSTRIES, INC.
Reel/Frame 068201/0712 →
Continuity (63)
Continuation 18581375 · Feb 20, 2024
Continuation 17189161 · Mar 1, 2021
Continuation In Part 17061195 · Oct 1, 2020
Continuation In Part 17035029 · Sep 28, 2020
Continuation In Part 17008276 · Aug 31, 2020
Continuation In Part 17000504 · Aug 24, 2020
Continuation In Part 16855724 · Apr 22, 2020
Continuation In Part 16836717 · Mar 31, 2020
Continuation In Part 16777270 · Jan 30, 2020
Continuation In Part 16720383 · Dec 19, 2019
Continuation In Part 16709598 · Dec 10, 2019
Continuation In Part 16412340 · May 14, 2019
Continuation In Part 16267893 · Feb 5, 2019
Continuation In Part 16248133 · Jan 15, 2019
Continuation In Part 15887496 · Feb 2, 2018
Continuation In Part 15879801 · Jan 25, 2018
Continuation In Part 15849901 · Dec 21, 2017
Continuation In Part 15835436 · Dec 7, 2017
Continuation In Part 15835312 · Dec 7, 2017
Continuation 15823363 · Nov 27, 2017
Continuation In Part 15823285 · Nov 27, 2017
Continuation In Part 15818733 · Nov 20, 2017
Continuation In Part 15813097 · Nov 14, 2017
Continuation In Part 15806697 · Nov 8, 2017
Continuation In Part 15790457 · Oct 23, 2017
Continuation In Part 15790327 · Oct 23, 2017
Continuation In Part 15788718 · Oct 19, 2017
Continuation In Part 15788002 · Oct 19, 2017
Continuation In Part 15787601 · Oct 18, 2017
Continuation In Part 15725274 · Oct 4, 2017
Continuation In Part 15725274 · Oct 4, 2017
Continuation In Part 15673368 · Aug 9, 2017
Continuation In Part 15655113 · Jul 20, 2017
Continuation In Part 15616427 · Jun 7, 2017
Continuation In Part 15616427 · Jun 7, 2017
Continuation In Part 15616427 · Jun 7, 2017
Continuation In Part 15616427 · Jun 7, 2017
Continuation In Part 15379899 · Dec 15, 2016
Continuation In Part 15376657 · Dec 13, 2016
Continuation In Part 15376657 · Dec 13, 2016
Continuation In Part 15376657 · Dec 13, 2016
Continuation In Part 15343209 · Nov 4, 2016
Continuation In Part 15237625 · Aug 15, 2016
Continuation In Part 15237625 · Aug 15, 2016
Continuation In Part 15237625 · Aug 15, 2016
Continuation In Part 15229476 · Aug 5, 2016
Continuation In Part 15206195 · Jul 8, 2016
Continuation In Part 15206195 · Jul 8, 2016
Continuation In Part 15186453 · Jun 18, 2016
Continuation In Part 15186453 · Jun 18, 2016
Continuation In Part 15166158 · May 26, 2016
Continuation In Part 15141752 · Apr 28, 2016
Continuation In Part 15141752 · Apr 28, 2016
Continuation In Part 15091563 · Apr 5, 2016
Continuation In Part 14986536 · Dec 31, 2015
Continuation In Part 14925974 · Oct 28, 2015
Continuation In Part 14925974 · Oct 28, 2015
Continuation In Part 14925974 · Oct 28, 2015
Provisional Application 62568312 · Oct 4, 2017
Provisional Application 62568298 · Oct 4, 2017
Provisional Application 62568305 · Oct 4, 2017
Provisional Application 62568291 · Oct 4, 2017
Provisional Application 62568307 · Oct 4, 2017