Transformers used in Parallel
FME Workbench permits multiple data streams, each of which passes through its own set of transformers.
A key concept in FME is the ability to have multiple processing streams within a workflow:
As above, a workspace author can split one stream into several, or combine several streams of data into one, as required.
|Similar terms to 'stream' that people use are 'flows,' 'pipes,' or 'pipelines.'|
Creating Multiple Streams
Splitting data can occur in a number of ways. Sometimes a transformer with multiple output ports (a Tester transformer is a good illustration of this) will divide data into several output streams, like so:
Additionally, a full stream of data can be duplicated by simply making multiple connections out of a single output port. In effect it creates a set of data for each connection.
Here, 80 Parks features are being read but, because there are multiple connections from the feature type, multiple copies of the data are being created.
Multiple streams are useful when a user needs to process the same data, but in a number of different ways.
Bringing Together Multiple Streams
When multiple streams are brought into the same input port no merging takes place. The data is simply accumulated into a single stream. This is often called a "Union".
Here, two streams of data - 80 features in one, 64 features in the other - converge into a single Inspector:
No merging has taken place; the data simply accumulates into 144 distinct output features. To carry out actual merging of data requires a specific transformer such as the FeatureMerger.