What is Transformation?
Transformations is in Informatica are the objects which creates, modifies or passes data to the defined target structures (tables, files or any other target).
The purpose of the transformation in Informatica is to modify the source data as per the requirement of target system. It also ensures the quality of the data being loaded into the target.
Informatica provides various transformations to perform specific functionalities.
For example, performing tax calculation based upon source data, data cleansing operation, etc. In transformations, we connect the ports to pass data to it, and transformation returns the output through output ports.
In this tutorial- you will learn
Transformation is classified into two categories, one based on connectivity, and other based on the change in no of rows. First we will look the transformation based on connectivity.
Types of transformation based on connectivity
- Connected Transformations
- Unconnected Transformations
In Informatica, during mappings the transformations which are connected to other transformations are called connected transformations.
For example, Source qualifier transformation of Source table EMP is connected to filter transformation to filter employees of a dept.
Those transformations that are not connected to any other transformations are called unconnected transformations.
Their functionality is used by calling them inside other transformations like Expression transformation. These transformations are not part of the pipeline.
The connected transformations are preferred when for every input row, transformation is called or is expected to return a value. For example, for the zip codes in every row, the transformation returning city name.
The unconnected transformations are useful when their functionality is only required periodically or based upon certain conditions. For example, calculation the tax details if tax value is not available.
Types of transformations based on the change in no of rows
- Active Transformations
- Passive Transformations
Active Transformations are those who modifies the data rows and the number of input rows passed to them. For example, if a transformation receives ten number of rows as input, and it returns fifteen number of rows as an output then it is an active transformation. The data in the row is also modified in the active transformation.
Passive transformations are those who does not change the number of input rows. In passive transformations the number of input and output rows remain the same, only data is modified at row level.
In the passive transformation, no new rows are created, or existing rows are dropped.
Following is the List of Transformations in Informatica
- Source Qualifier Transformation
- Aggregator Transformation
- Router Transformation
- Joiner transformation
- Rank Transformation
- Sequence Generator Transformation
- Transaction Control Transformation
- Lookup and Re-usable transformation
- Normalizer Transformation
- Performance Tuning for Transformation
- External Transformation
- Expression Transformation
Filter Transformation is an active transformation as it changes the no of records.
Using the filter transformation, we can filter the records based on the filter condition. Filter transformation is an active transformation as it changes the no of records.
For example, for loading the employee records having deptno equal to 10 only, we can put filter transformation in the mapping with the filter condition deptno=10. So only those records which have deptno =10 will be passed by filter transformation, rest other records will be dropped.
How to use filter transformation-
Step 1 – Create a mapping having source "EMP" and target "EMP_TARGET"
Step 2 – Then in the mapping
- Select Transformation menu
- Select create option
Step 3 - Then in the create transformation window
- Select Filter Transformation from the list
- Enter Transformation name "fltr_deptno_10"
- Select create option
Step 4 – The filter transformation will be created, Select "Done" button in the create transformation window
Step 5 – In the mapping
- Drag and drop all the Source qualifier columns to the filter transformation
- Link the columns from filter transformation to the target table
Step 6 – Double click on the filter transformation to open its properties, and then
- Select the properties menu
- Click on the Filter condition editor
Step 7 – Then in the filter condition expression editor
- Enter filter condition – deptno=10
- Select OK button
Step 8 – Now again in the edit transformation window in Properties tab you will see the filter condition, select OK button
Now save the mapping and execute it after creating session and workflow. In the target table, the records having deptno=10 only will be loaded.
In this way, you can filter the source records using filter transformation.