There are three different types of workflows: batch, real-time and tasks. Each have a slightly different execution behavior, but their modeling and configuration structure is the same.
Batch Workflow
Batch workflows are used to collect process and distribute file-based data, also referred to as an offline model. These workflows can be configured for multi-threaded execution, enforcing a first-in-first-out processing order, and a strict transaction boundary based on each batch processed. Batch workflows are transaction safe as data processing can be rolled back and reprocessed if required. This since the file currently being collected and forwarded is saved as temporary files during processing. Only when the file is fully processed, all data is transaction saved. Should the workflow be interrupted, the temporary files are removed. When the workflow is restarted, it will restart from the beginning with the file it was previously processing.
Batch workflow example.
Real-Time Workflow
Real-time workflows enable online processing of requests/answers with other systems. These workflows enable execution of large numbers of independent execution paths simultaneously using a multi-threading execution model. The order of the processing of records hence varies.
Real-time workflow example
Anchor | ||||
---|---|---|---|---|
|
Task workflows are used to execute common activities such as test, cleanup or maintenance tasks. A number of System Tasks are pre-configured in MediationZone and can be complemented with any user-defined activity. List of available Task Agents:
- Data Hub – Removes old partitions from a database.
- Data Veracity – Executes repair configurations to manage faulty UDRs extracted from workflows to a database.
SQL Agent – Executes SQL statements on a database.
Script – Executes a shell script with optional parameters.
- Unit Test Runner – Runs a unit test.
Executing an SQL script using an SQL agent in a Task workflow