Job Flows

A flow controls the sequence in which job steps are executed. Every job must contain at least one flow. Each flow must contain at least one step. You can configure sequential flows, which execute one after the other. You can also configure sibling flows, which execute in parallel. You can combine sequential and parallel flows in a job. For example, sibling parallel flows download catalog files, followed by a sequential flow that imports catalog files, followed by another set of sibling parallel flows that download price files, followed by another sequential flow that imports the price files. The job could finish with a sequential flow that reindexes and replicates to production.

In the Business Manager UI, sequential flows take up the width of the screen (1) and execute in the order shown, from top to bottom. Sibling flows appear next to each other and run simultaneously as long as system resources are available (2).

If parallel execution isn't possible, for example, when multiple steps need to access the same resources at the same time, you can configure sibling flows to execute sequentially. Sequential sibling flows execute from left to right.

If system resources aren't available, sibling flows are executed sequentially. If a job step doesn't support parallel execution, the sibling flows are executed sequentially. For example, the ExecutePipeline system step that supports legacy pipelines is always executed sequentially to avoid database conflicts.