IP Library Granted Patent US 12,143,424
Granted Patent B1
US 12,143,424 · App. 18/779,029 · Granted Nov 12, 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,143,424
App. No.
18/779,029
Granted
Nov 12, 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 (70)

1. A distributed computing cluster comprising:

a 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 a first input feed,

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

process the respective first data stored in the memory of the first computer system 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,

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

wherein the first and second computer systems are distinct; and

a second plurality of computer systems;

wherein a third computer system of the first plurality of computer systems is configured to execute software instructions that cause a fourth computer system of the second plurality of computer systems to execute software instructions that apply at least one of the first transformation pipeline and the second transformation pipeline.

2. The distributed computing cluster of claim 1 , wherein at least one of the first transformation pipeline and the second transformation pipeline is non-linear.

3. The distributed computing cluster of claim 2 ,

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

identify a fifth computer system of the first plurality of computer systems,

wherein the fifth computer system is not configured to apply the first transformation pipeline to any stream of input data,

and cause the fifth computer system to process a second stream of input data received from a second input feed substantially in real time by executing software instructions that apply the first transformation pipeline to the second stream of input data.

4. The distributed computing cluster of claim 3 , wherein the third computer system is further configured to execute software instructions that:

identify one or more of the respective memories that store respective first data representing at least a respective portion of the distributed computational graph,

wherein the respective first data includes information about the first transformation pipeline,

and store in the identified one or more memories information identifying the fifth computer system.

5. The distributed computing cluster of claim 2 ,

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

identify a fifth computer system of the first plurality of computer systems,

wherein the fifth computer system is not configured to apply the second transformation pipeline to any pipeline output message,

and cause the fifth computer system to process third pipeline output messages substantially in real time by executing software instructions that apply the second transformation pipeline to the third pipeline output messages.

6. The distributed computing cluster of claim 5 , wherein the third computer system is further configured to execute software instructions that:

identify one or more of the respective memories that store respective first data representing at least a respective portion of the distributed computational graph,

wherein the respective first data includes information about the second transformation pipeline,

and store in the identified one or more memories information identifying the fifth computer system.

7. The distributed computing cluster of claim 1 ,

wherein the first computer system is further configured to transmit the first pipeline output messages to the fourth computer system of the second plurality of computer systems,

wherein the first computer system is distinct from the fourth computer system,

and wherein the second computer system is distinct from the fourth computer system.

8. The distributed computing cluster of claim 1 ,

wherein the first computer system is further configured to transmit the first pipeline output messages to another computer system of the second plurality of computer systems.

9. A distributed computing cluster comprising:

a first plurality of computer systems,

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

describes at least a respective portion of a configuration of a first transformation pipeline,

and identifies at least 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 a first input feed,

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

process the respective first data to determine an identification of 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 identification,

wherein the second computer system is configured to:

receive the first pipeline output messages,

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

wherein the first and second computer systems are distinct; and

a second plurality of computer systems;

wherein a third computer system of the first plurality of computer systems is configured to execute software instructions that cause the second plurality of computer systems to execute at least one of the first transformation pipeline and the second transformation pipeline.

10. The distributed computing cluster of claim 9 , wherein one or more of the first transformation pipeline and the second transformation pipeline is non-linear.

11. The distributed computing cluster of claim 10 ,

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

identify a fourth computer system of the first plurality of computer systems,

wherein the fourth computer system is not configured to apply the first transformation pipeline to any stream of input data,

and cause the fourth computer system to process a second stream of input data received from a second input feed substantially in real time by executing software instructions that apply the first transformation pipeline to the second stream of input data.

12. The distributed computing cluster of claim 11 , wherein the third computer system is further configured to execute software instructions that:

identify one or more of the respective memories that stores respective data that describes a respective portion of a configuration of the first transformation pipeline,

and store in the identified one or more memories information identifying the fourth computer system.

13. The distributed computing cluster of claim 9 ,

wherein the first computer system is further configured to transmit the first pipeline output messages to a fourth computer system of the second plurality of computer systems,

wherein the first computer system is distinct from the fourth computer system,

and wherein the second computer system is distinct from the fourth computer system.

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/0319 →
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 62568298 · Oct 4, 2017
Provisional Application 62568312 · Oct 4, 2017
Provisional Application 62568305 · Oct 4, 2017
Provisional Application 62568291 · Oct 4, 2017
Provisional Application 62568307 · Oct 4, 2017