You can create complex ports in some transformations that are supported on the Spark engine. Read and Write transformations can represent ports that pass hierarchical data as complex data types.
You can create complex ports in the following transformations:
Aggregator
Expression
Filter
Java
Joiner
Lookup
Normalizer
Router
Sorter
Union
The Read and Write transformations can read and write hierarchical data in complex files. To read and write hierarchical data, the Read and Write transformations must meet the following requirements:
The transformation must be based on a complex file data object.
The data object read and write operations must project columns as complex data types.