US 11,983,557 B2
Orchestration for data pipeline execution plans
Alex Gitelman, Berkeley, CA (US); Twisha Mehta, Fremont, CA (US); Stephen Petschulat, Coquitlam (CA); Alex Field, Vancouver (CA); and LingTao Zhang, Coquitlam (CA)
Assigned to Salesforce, Inc., San Francisco, CA (US)
Filed by Salesforce, Inc., San Francisco, CA (US)
Filed on Jan. 31, 2020, as Appl. No. 16/779,040.
Prior Publication US 2021/0240519 A1, Aug. 5, 2021
Int. Cl. G06F 3/0484 (2022.01); G06F 9/48 (2006.01)
CPC G06F 9/485 (2013.01) [G06F 3/0484 (2013.01)] 15 Claims
OG exemplary drawing
 
1. A method for data processing, comprising:
receiving, at an orchestration server and from a user device, a request defining a data modification process;
generating, at the orchestration server, an execution file based at least in part on the request, wherein the execution file comprises a first subset of tasks of a set of tasks and a second subset of tasks of the set of tasks for performing the data modification process across a plurality of systems, and the execution file defines an execution order for performing the first subset of tasks and the second subset of tasks;
sending, from the orchestration server and for display via a user interface of the user device, a user view of an execution plan for the data modification process based at least in part on the execution file, the user view of the execution plan comprising a plurality of steps corresponding to the set of tasks, wherein the plurality of systems is transparent to the user view based on the user view refraining from indicating which system of the plurality of systems performs which step of the plurality of steps;
executing, at the orchestration server and for the execution file, the first subset of tasks according to the execution order for performing the set of tasks;
updating, at the orchestration server, the execution file based at least in part on executing the first subset of tasks, wherein the updating the execution file comprises modifying the second subset of tasks to comprise a payload based at least in part on an output of the executed first subset of tasks and communicating with the plurality of systems based at least in part on a plurality of generated payloads corresponding to the first subset of tasks and the modified second subset of tasks, the payload comprising a file indicating a data process and further indicating a system of the plurality of systems for performing the data process;
updating, from the orchestration server and for display via the user interface of the user device, the user view of the execution plan based at least in part on the updated execution file; and
executing, at the orchestration server and for the updated execution file, the modified second subset of tasks according to the execution order for performing the set of tasks and the payload.