US 12,143,424 B1
Rapid predictive analysis of very large data sets using the distributed computational graph
Jason Crabtree, Vienna, VA (US); and Andrew Sellers, Monument, CO (US)
Assigned to QOMPLX LLC, Reston, VA (US)
Filed by QOMPLX LLC, Reston, VA (US)
Filed on Jul. 21, 2024, as Appl. No. 18/779,029.
Application 18/779,029 is a continuation of application No. 18/581,375, filed on Feb. 20, 2024.
Application 18/581,375 is a continuation of application No. 17/189,161, filed on Mar. 1, 2021.
Application 17/189,161 is a continuation in part of application No. 17/061,195, filed on Oct. 1, 2020, granted, now 11,570,214, issued on Jan. 31, 2023.
Application 17/061,195 is a continuation in part of application No. 17/035,029, filed on Sep. 28, 2020, granted, now 11,546,380, issued on Jan. 3, 2023.
Application 17/035,029 is a continuation in part of application No. 17/008,276, filed on Aug. 31, 2020, granted, now 11,323,484, issued on May 3, 2022.
Application 17/008,276 is a continuation in part of application No. 17/000,504, filed on Aug. 24, 2020, granted, now 11,477,245, issued on Oct. 18, 2022.
Application 17/000,504 is a continuation in part of application No. 16/855,724, filed on Apr. 22, 2020, granted, now 11,218,510, issued on Jan. 4, 2022.
Application 16/855,724 is a continuation in part of application No. 16/836,717, filed on Mar. 31, 2020, granted, now 10,917,428, issued on Feb. 9, 2021.
Application 16/855,724 is a continuation in part of application No. 16/777,270, filed on Jan. 30, 2020, granted, now 11,025,674, issued on Jun. 1, 2021.
Application 16/836,717 is a continuation in part of application No. 16/720,383, filed on Dec. 19, 2019, granted, now 10,944,795, issued on Mar. 9, 2021.
Application 17/189,161 is a continuation in part of application No. 16/709,598, filed on Dec. 10, 2019, granted, now 11,507,858, issued on Nov. 22, 2022.
Application 17/000,504 is a continuation in part of application No. 16/412,340, filed on May 14, 2019, granted, now 11,539,663, issued on Dec. 27, 2022.
Application 16/412,340 is a continuation in part of application No. 16/267,893, filed on Feb. 5, 2019, abandoned.
Application 16/267,893 is a continuation in part of application No. 16/248,133, filed on Jan. 15, 2019, abandoned.
Application 16/836,717 is a continuation in part of application No. 15/887,496, filed on Feb. 2, 2018, granted, now 10,783,241, issued on Sep. 22, 2020.
Application 17/061,195 is a continuation in part of application No. 15/879,801, filed on Jan. 25, 2018, abandoned.
Application 16/248,133 is a continuation in part of application No. 15/849,901, filed on Dec. 21, 2017, granted, now 11,023,284, issued on Jun. 1, 2021.
Application 15/849,901 is a continuation in part of application No. 15/835,436, filed on Dec. 7, 2017, granted, now 10,572,828, issued on Feb. 25, 2020.
Application 15/849,901 is a continuation in part of application No. 15/835,312, filed on Dec. 7, 2017, granted, now 11,055,451, issued on Jul. 6, 2021.
Application 16/720,383 is a continuation of application No. 15/823,363, filed on Nov. 27, 2017, granted, now 10,560,483, issued on Feb. 11, 2020.
Application 15/887,496 is a continuation in part of application No. 15/823,285, filed on Nov. 27, 2017, granted, now 10,740,096, issued on Aug. 11, 2020.
Application 15/887,496 is a continuation in part of application No. 15/818,733, filed on Nov. 20, 2017, granted, now 10,673,887, issued on Jun. 2, 2020.
Application 16/248,133 is a continuation in part of application No. 15/813,097, filed on Nov. 14, 2017, abandoned.
Application 16/248,133 is a continuation in part of application No. 15/806,697, filed on Nov. 8, 2017, abandoned.
Application 15/835,436 is a continuation in part of application No. 15/790,457, filed on Oct. 23, 2017, granted, now 10,884,999, issued on Jan. 5, 2021.
Application 15/790,457 is a continuation in part of application No. 15/790,327, filed on Oct. 23, 2017, granted, now 10,860,951, issued on Dec. 8, 2020.
Application 15/823,285 is a continuation in part of application No. 15/788,718, filed on Oct. 19, 2017, granted, now 10,861,014, issued on Dec. 8, 2020.
Application 15/788,718 is a continuation in part of application No. 15/788,002, filed on Oct. 19, 2017, abandoned.
Application 15/788,002 is a continuation in part of application No. 15/787,601, filed on Oct. 18, 2017, granted, now 10,860,660, issued on Dec. 8, 2020.
Application 15/818,733 is a continuation in part of application No. 15/725,274, filed on Oct. 4, 2017, granted, now 10,609,079, issued on Mar. 31, 2020.
Application 15/823,363 is a continuation in part of application No. 15/725,274, filed on Oct. 4, 2017, granted, now 10,609,079, issued on Mar. 31, 2020.
Application 16/248,133 is a continuation in part of application No. 15/673,368, filed on Aug. 9, 2017, abandoned.
Application 15/725,274 is a continuation in part of application No. 15/655,113, filed on Jul. 20, 2017, granted, now 10,735,456, issued on Aug. 4, 2020.
Application 15/813,097 is a continuation in part of application No. 15/616,427, filed on Jun. 7, 2017, abandoned.
Application 15/655,113 is a continuation in part of application No. 15/616,427, filed on Jun. 7, 2017, abandoned.
Application 15/790,327 is a continuation in part of application No. 15/616,427, filed on Jun. 7, 2017, abandoned.
Application 15/787,601 is a continuation in part of application No. 15/616,427, filed on Jun. 7, 2017, abandoned.
Application 15/879,801 is a continuation in part of application No. 15/379,899, filed on Dec. 15, 2016, abandoned.
Application 15/673,368 is a continuation in part of application No. 15/376,657, filed on Dec. 13, 2016, granted, now 10,402,906, issued on Sep. 3, 2019.
Application 15/806,697 is a continuation in part of application No. 15/376,657, filed on Dec. 13, 2016, granted, now 10,402,906, issued on Sep. 3, 2019.
Application 15/379,899 is a continuation in part of application No. 15/376,657, filed on Dec. 13, 2016, granted, now 10,402,906, issued on Sep. 3, 2019.
Application 15/806,697 is a continuation in part of application No. 15/343,209, filed on Nov. 4, 2016, granted, now 11,087,403, issued on Aug. 10, 2021.
Application 15/376,657 is a continuation in part of application No. 15/237,625, filed on Aug. 15, 2016, granted, now 10,248,910, issued on Apr. 2, 2019.
Application 15/655,113 is a continuation in part of application No. 15/237,625, filed on Aug. 15, 2016, granted, now 10,248,910, issued on Apr. 2, 2019.
Application 15/343,209 is a continuation in part of application No. 15/237,625, filed on Aug. 15, 2016, granted, now 10,248,910, issued on Apr. 2, 2019.
Application 15/343,209 is a continuation in part of application No. 15/229,476, filed on Aug. 5, 2016, granted, now 10,454,791, issued on Oct. 22, 2019.
Application 15/237,625 is a continuation in part of application No. 15/206,195, filed on Jul. 8, 2016, abandoned.
Application 15/229,476 is a continuation in part of application No. 15/206,195, filed on Jul. 8, 2016, abandoned.
Application 15/206,195 is a continuation in part of application No. 15/186,453, filed on Jun. 18, 2016, abandoned.
Application 15/835,312 is a continuation in part of application No. 15/186,453, filed on Jun. 18, 2016, abandoned.
Application 15/186,453 is a continuation in part of application No. 15/166,158, filed on May 26, 2016, abandoned.
Application 15/790,327 is a continuation in part of application No. 15/141,752, filed on Apr. 28, 2016, granted, now 10,860,962, issued on Dec. 8, 2020.
Application 15/166,158 is a continuation in part of application No. 15/141,752, filed on Apr. 28, 2016, granted, now 10,860,962, issued on Dec. 8, 2020.
Application 15/141,752 is a continuation in part of application No. 15/091,563, filed on Apr. 5, 2016, granted, now 10,204,147, issued on Feb. 12, 2019.
Application 15/141,752 is a continuation in part of application No. 14/986,536, filed on Dec. 31, 2015, granted, now 10,210,255, issued on Feb. 19, 2019.
Application 16/709,598 is a continuation in part of application No. 14/925,974, filed on Oct. 28, 2015, abandoned.
Application 15/616,427 is a continuation in part of application No. 14/925,974, filed on Oct. 28, 2015, abandoned.
Application 15/141,752 is a continuation in part of application No. 14/925,974, filed on Oct. 28, 2015, abandoned.
Claims priority of provisional application 62/568,298, filed on Oct. 4, 2017.
Claims priority of provisional application 62/568,312, filed on Oct. 4, 2017.
Claims priority of provisional application 62/568,305, filed on Oct. 4, 2017.
Claims priority of provisional application 62/568,291, filed on Oct. 4, 2017.
Claims priority of provisional application 62/568,307, filed on Oct. 4, 2017.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/50 (2006.01); G06F 9/48 (2006.01); G06F 16/2458 (2019.01); G06F 16/951 (2019.01); H04L 9/40 (2022.01)
CPC H04L 63/20 (2013.01) [G06F 9/5038 (2013.01); G06F 16/2477 (2019.01); G06F 16/951 (2019.01); H04L 63/1425 (2013.01); H04L 63/1441 (2013.01); G06F 9/4881 (2013.01)] 13 Claims
OG exemplary drawing
 
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.