Iterator Service
Split a collection of data into separate objects and process them in parallel.
Type:
Data Flow Control
Platform
Flow
Category
Logic
Documentation
What is it?
The Iterator data flow control consists of two separate services - fork and join - which allow you to split and iterate over a collection of objects processing each object in the collection individually and at the same time (ie. in parallel).
What does it do?
Iterator fork takes in a collection of objects (eg. multiple sales order), splits the collection into individual objects and lets you process each one separately.
Iterator join, an optional closure of a forked process, ensures that all actions within the forked portion of a process are completed before continuing further.
Fork + Join: When both fork and join are used, the join service makes a process synchronous. Individual objects within a collection are processed in parallel but continuation of a process waits for all to complete before continuing onwards.
Fork only: Without the join, a collection is split into multiple routes which continue asynchronously - in any order.
Use Cases
Common use-cases where iterator service is used include:
- Batch data pulls; eg. retrieving sales orders on scheduled basis
- Processing of tabular data files; eg. synchronization of inventory levels received in a CSV file
- Bulk email sendouts in marketing campaigns
- Scheduled processes which often retrieve more than one object at a time
Feature Video
View the iterator in action and learn more