Types of Transformations
A transformation is a repository object that generates, modifies, or passes data. The Designer provides a set of transformations that perform specific functions. For example, an Aggregator transformation performs calculations on groups of data. Transformations in a mapping represent the operations the Integration Service performs on the data.
Transformations can be of the following types:
$ Active or Passive
$ Connected or Unconnected
$ Native or Non-native
Active Transformations
If the transformation do any of the following actions then its called as an Active transformation.
Change the number of rows that pass through the transformation. For example, the Filter transformation is active because it removes rows that do not meet the filter condition. All multi-group transformations are active because they might change the number of rows that pass through the transformation.
Change the transaction boundary. For example, the Transaction Control transformation is active because it defines a commit or roll back transaction based on an expression evaluated for each row.
Change the row type. For example, the Update Strategy transformation is active because it flags rows for insert, delete, update, or reject.
Eg:- Aggregator, Source Qualifier, Filter, Joiner, Normalizer, Rank, Router, Sorter, Union, Update strategy, Lookup
Passive Transformations
A passive transformation does not change the number of rows that pass through the transformation, maintains the transaction boundary, and maintains the row type. For example, The Expression transformation will process all the input rows and pass to target or other transformation, ie number of rows in source and targets are same.
You can connect multiple transformations to the same downstream transformation or to the same transformation input group when all transformations in the upstream branches are passive. The transformation that originates the branch can be active or passive.
Eg:- Expression. Sequence generator, Data masking, Input, Output, Stored procedure, Lookup
Connected Transformations
Transformations can be connected to the data flow, either from source to Target or other transformations in the mapping.
Eg:- Aggregator, Source Qualifier, Filter, Joiner, Normalizer, Rank, Router, Sorter, Union, Update strategy, Lookup
Un-connected Transformations
An unconnected transformation is not connected to other transformations in the mapping. Its called within another transformation and returns a value to that transformation.
Eg: Stored procedure, Lookup
Native and Non-native Transformations
Native transformations are a set of transformations that the Designer provides. Non-native transformations are transformations that you create using the Custom transformation. The Designer also provides some non- native transformations such as Java, SQL, and Union transformations. Rules that apply to Custom transformations also apply to non-native transformations that are built using the Custom transformation.
Eg: Non-Native – Custom, HTTP, JAVA, SQL, Union. Native – Aggregator, Source Qualifier, Filter, Joiner, Normalizer, Rank, Router, Sorter, Update strategy, Lookup