Oracle Unity allows you to set up job sequences so that you can schedule multiple jobs to run one after another automatically. This helps you manage your data by ensuring that certain system and validation tasks are completed before running jobs that depend on those system tasks.
Job sequence example
Consider you have the following business goals:
- Import your organization's up-to-date customer data into the Oracle Unity data model.
- Process and validate the imported data.
- Complete deduplication, merge, and promotion rules to match up and unify this data.
- Export a segment using the processed and validated data.
The image below shows the job sequence that can meet all these goals.
Each job in the sequence needs to complete successfully before the next is initiated.
- The ingest job will import the customer data.
- The data warehouse job will process and validate the imported data.
- The identity resolution pipeline job will complete deduplication, merge, and promotion rules.
- The campaign job will export the segment.
See how to create this workflow from the Oracle Unity Developer Help Center.
Managing job sequences
You can manage job sequences by doing the following:
- Start, stop, and resume job sequences.
- Identify failures for job sequences that are in progress or have completed.
- Resume job sequences that have stopped by the Oracle Unity system due to failures. If you resume a job sequence that was stopped by the system due to failure, it will not restart from the beginning of the job sequence. It will continue from the job(s) in the job sequence that it was on when it stopped.
- Manually stop job sequences in progress. If you want to re-run a job sequence that was manually stopped, you will need to restart it from the beginning of the job sequence. You can't resume it from the point that it was manually stopped.
- View details on all the job sequences that have been created.
- Set job sequences to inactive so that they can't be started.
Learn how to manage job sequences from the Oracle Unity Developer Help Center:
- Edit job sequences
- Get all job sequences
- Get a list of job sequences and their schedules
- Delete a job sequence
- Manage job sequences
- View job sequence metrics
The Oracle Unity Jobs dashboard allows you to view the status and details (start time, end time, started by) of individual jobs within a job sequence.
Job sequence conditions
When configuring job sequences, you have the option of using the job type gate to use conditions in the job sequence.
Use the and_gate condition to define multiple jobs that need to complete before the subsequent one runs.
As an example, you have Ingest job 1, Ingest job 2, and Ingest job 3. You want all three to run and complete successfully before running the data warehouse job.
The image below shows the workflow of this example.
Use the or_gate condition to define at least one job out of multiple that need to complete before the subsequent one runs.
As an example, you have Ingest job 1, Ingest job 2, and Ingest job 3. You want any of them to complete successfully before running the data warehouse job.
The image below shows the workflow of this example.
Learn how to add conditions to job sequences using the Oracle Unity API from the Oracle Unity Developer Help Center.
Scheduling job sequences
When creating and managing job sequences, you have the option of configuring them to run on a regular schedule/frequency. If needed, you can update and remove schedules to job sequences.
When viewing the schedule of a job sequence, you can view the following:
- The last time the job sequence started.
- The next time the job sequence is scheduled to start.
- A summary of the job sequence schedule.
- The next five scheduled times the job sequence will run.
Learn how to add schedules to job sequences using the Oracle Unity API from the Oracle Unity Developer Help Center.
You can configure job sequences to receive email notifications on the status and progress of job sequences. When a job in a job sequence completes, the notification will indicate the status of the job completion: Success or Failure.
Details about the job(s) that will be initiated next in job sequences
Email notifications will also indicate the subsequent job or series of jobs that will run in the job sequence.
In some cases, this field may be blank. Consider these examples.
Jobs 1 and 2 run with the and_gate condition, so that job 3 won't start until the two previous jobs complete.
If job 1 completes before job 2, the notification for job 1 will show a blank for the job(s) that will be initiated next. This is because job 2 hasn't completed and job 1 expects job 2 to complete before starting job 3.
When job 2 completes, it will show job 3 as the job that will be initiated next since all jobs in the and_gate condition (job 1 and job 2) have completed.
Jobs 1 and 2 run with the or_gate condition, so that job 3 won't start until either job 1 or job 2 complete.
If job 1 completes before job 2, the notification for job 1 will show job 3 as the job that will be initiated next since the or_gate condition has been met (job 1 completed).
When job 2 completes, the notification will show a blank for the job(s) that will be initiated next since the job 1 notification already showed job 3 as the job that will be initiated next.
Learn how to configure email notifications from the Oracle Unity Developer Help Center.