US 11,947,978 B2
Dynamic execution of parameterized applications for the processing of keyed network data streams
Joel Gould, Arlington, MA (US); Larry Paul Rossi, Colorado Springs, CO (US); and Trevor Murphy, Singapore (SG)
Assigned to Ab Initio Technology LLC, Lexington, MA (US)
Filed by Ab Initio Technology LLC, Lexington, MA (US)
Filed on Feb. 16, 2021, as Appl. No. 17/176,700.
Application 17/176,700 is a continuation in part of application No. 16/595,586, filed on Oct. 8, 2019, granted, now 11,080,067.
Application 16/595,586 is a continuation of application No. 15/688,587, filed on Aug. 28, 2017, granted, now 10,831,509, issued on Nov. 10, 2020.
Claims priority of provisional application 62/462,498, filed on Feb. 23, 2017.
Prior Publication US 2021/0165664 A1, Jun. 3, 2021
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 7/00 (2006.01); G06F 9/445 (2018.01); G06F 9/448 (2018.01); G06F 16/178 (2019.01); G06F 16/2455 (2019.01); G06F 16/901 (2019.01); G06F 8/41 (2018.01)
CPC G06F 9/4494 (2018.02) [G06F 9/44505 (2013.01); G06F 16/1794 (2019.01); G06F 16/24568 (2019.01); G06F 16/9024 (2019.01); G06F 8/433 (2013.01)] 26 Claims
OG exemplary drawing
 
1. A method performed by a data processing system for executing a computer program to process one or more data items by identifying first candidate actions that are eligible to be performed, executing at least one of the first candidate actions, identifying one or more second candidate actions that are eligible to be performed and determining whether to select at least one of one or more remaining first candidate actions or to select the at least one of the one or more second candidate actions, the method including:
receiving, by a data processing system, one or more data items, with each data item associated with a key value;
displaying one or more user interface elements for specifying one or more properties or one or more parameter values for processing keyed data items;
accessing, from a hardware storage device, a computer program specifying first candidate actions and one or more second candidate actions, with the first candidate actions and the one or more second candidate actions becoming eligible for performance;
executing the computer program accessed from the hardware storage device with the one or more properties for the one or more parameter values;
processing, based on the executing, the one or data items, and
for a particular data item associated with a key value, the processing including:
identifying, by the data processing system, a current state of the computer program for that particular key value;
identifying, based on the current state of the computer program for that particular key value, that the first candidate actions are eligible for performance;
generating, by the data processing system, one or more instructions to perform the least one of the first candidate actions identified;
transmitting, by the data processing system over one or more networks, the one or more generated instructions to one or more computing systems to cause performance of the least one of the first candidate actions identified;
causing, by the data processing system, the computer program, with respect to the particular key value, to transition from its current state to a subsequent state;
while one or more remaining first candidate actions are eligible for performance, identifying, based on the subsequent state of the computer program for that particular key value, that at least one of the one or more second candidate actions are eligible for performance;
applying one or more rules to determine whether to select at least one of the one or more remaining first candidate actions that are eligible for performance or to select the at least one of the one or more second candidate actions that are eligible for performance;
based on application of the one or more rules, determining whether the computer program:
causes performance of the at least one the one or more remaining first candidate actions selected; or
causes performance of the at least one of the one or more second candidate actions selected; and
generating one or more values for one or more indicators, where the one or more values are associated with a key value and based on execution of a computer program.