Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Minor change to 'Availability'

Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

Availability

Example: Multiple parallel processes in a job chain

...

The example job chain will look like this:

Flowchart
Order [label="insert to export table",fillcolor="green"]
JobChainStart [label="JobChainStart",fillcolor="orange"]
truncate_export_table [label="truncate_export_table",fillcolor="lightskyblue"]
JobChainSplitter1 [label="split_partitions",fillcolor="lightskyblue"]
export_table_partition_1 [label="split_partitions:export_table_partition_1",fillcolor="white"]
export_table_partition_2 [label="split_partitions:export_table_partition_2",fillcolor="white"]
export_table_partition_3 [label="split_partitions:export_table_partition_3",fillcolor="white"]
export_table_partition_4 [label="split_partitions:export_table_partition_4",fillcolor="white"]
join_partitions [label="join_partitions",fillcolor="lightskyblue"]
post_export_table_build_tasks [label="post_export_table_build_tasks",fillcolor="lightskyblue"]
JobChainSplitter2 [label="split_test",fillcolor="lightskyblue"]
export_table_partition_1 [label="split_test:run_export_table_data_tests_partition_1",fillcolor="white"]
export_table_partition_2 [label="split_test:run_export_table_data_tests_partition_2",fillcolor="white"]
export_table_partition_3 [label="split_test:run_export_table_data_tests_partition_3",fillcolor="white"]
export_table_partition_4 [label="split_test:run_export_table_data_tests_partition_4",fillcolor="white"]
join_test[label="join_test",fillcolor="lightskyblue"]
job1 [label="100",fillcolor="lightskyblue"]
success [label="success",fillcolor="orange"]

Order  -> JobChainStart 
JobChainStart -> truncate_export_table
truncate_export_table -> JobChainSplitter1 
JobChainSplitter1 -> export_table_partition_1
JobChainSplitter1 -> export_table_partition_2
JobChainSplitter1 -> export_table_partition_3
JobChainSplitter1 -> export_table_partition_4
export_table_partition_1 -> join_partitions
export_table_partition_2 -> join_partitions
export_table_partition_3 -> join_partitions
export_table_partition_4 -> join_partitions
join_partitions -> post_export_table_build_tasks
post_export_table_build_tasks -> JobChainSplitter2 
JobChainSplitter2 -> run_export_table_data_tests_partition_1
JobChainSplitter2 -> run_export_table_data_tests_partition_2
JobChainSplitter2 -> run_export_table_data_tests_partition_3
JobChainSplitter2 -> run_export_table_data_tests_partition_4
run_export_table_data_tests_partition_1 -> join_test
run_export_table_data_tests_partition_2 -> join_test
run_export_table_data_tests_partition_3 -> join_test
run_export_table_data_tests_partition_4 -> join_test
join_test -> job1 
job1 -> success

 Image Removed

We refer to the pattern that results in this type of job chain as a "diamond" pattern. Such patterns can occur more than once in a Job Chain: both sequentially, as shown in the diagram above, in parallel and nested. They can also be combined with other job chain patterns such as emerald or cross-over patterns (see Example showing the synchronization of multiple job chains).

...

The next illustration shows a list view of the job chain as created by JOE:

Image RemovedImage Added

The "Splitter" job

...