US 11,836,519 B2
Decoupled push-down execution generator
Frank Joseph Klein, Eagan, MN (US)
Assigned to Oracle International Corporation, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Oct. 18, 2019, as Appl. No. 16/657,532.
Claims priority of provisional application 62/748,347, filed on Oct. 19, 2018.
Prior Publication US 2020/0125404 A1, Apr. 23, 2020
Int. Cl. G06F 9/48 (2006.01); G06F 8/30 (2018.01); G06F 9/54 (2006.01); G06F 16/27 (2019.01)
CPC G06F 9/4881 (2013.01) [G06F 8/30 (2013.01); G06F 9/54 (2013.01); G06F 16/27 (2019.01)] 15 Claims
OG exemplary drawing
 
1. A method of marshalling existing software applications to automatically execute a task in a cloud environment, the method comprising:
receiving a request to execute a task in the cloud environment;
in response to receiving the request, performing the following at the cloud environment:
generating a plurality of actions that together execute the task;
creating a job definition for the plurality of actions;
passing the plurality of actions to a plurality of code generation services, wherein each of the plurality of code generation services is associated with a corresponding software application in a plurality of software applications, and wherein each of the plurality of code generation services is configured to dynamically:
select a subset of the plurality of actions that can be executed by the corresponding software application;
generate a second plurality of actions to be executed by the corresponding software application that implement the subset of the plurality of actions;
add the second plurality of actions to the job definition; and
send the job definition to an orchestration service, wherein the job definition comprises each of the second plurality of actions for each of the software applications;
in response to receiving the job definition, performing the following at the orchestration service:
generating an execution schedule for each of the second plurality of actions;
passing the job definition to the plurality of software applications, wherein each of the plurality of software applications:
selects a subset of the second plurality of actions corresponding to the software application; and
executes the selected subset of the second plurality of actions in accordance with the execution schedule.