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.
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.
Real-time workflow example
Task Workflow
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