Transformers in Parallel

A stream is a flow of data represented by connections in the workspace. A key concept in FME is the ability to have multiple parallel streams within a workspace.

Multiple Streams

Multiple streams are useful when a user needs to process the same data but in many different ways. A workspace author can turn one stream into several, or combine several streams of data into one, as required:

Here an author is creating three data streams, each of which is processed separately then combined back into a single stream.

Creating Multiple Streams

Creating multiple data streams 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 (or filter) data with several possible output streams:

Here data is divided into two streams, one of which is not connected to anything.

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 FME reads 8 features but, because there are multiple connections, creates multiple copies of the data:

Bringing Together Multiple Streams

When multiple streams are connected to the same input port no merging takes place. The data is simply accumulated into a single stream. This is often called a union.

Here, three streams of data converge into a writer feature type:

No merging takes place; the data simply accumulates into 12 distinct features in the output dataset. Think of it as three pipes of water emptying into a single contained.

To carry out actual merging of data requires a specific transformer such as the FeatureMerger or FeatureJoiner.

results matching ""

    No results matching ""