Beruflich Dokumente
Kultur Dokumente
Sorter transformation is an active and connected transformation used to sort the data. The data can be
sorted in ascending or descending order by specifying the sort key. You can specify one or more ports as
a sort key and configure each sort key port to sort in ascending or descending order. You can also
configure the order of the ports in which the integration service applies to sort the data.
The sorter transformation is used to sort the data from relational or flat file sources. The sorter
transformation can also be used for case-sensitive sorting and can be used to specify whether the
output rows should be distinct or not.
Use the sorter transformation before the aggregator and joiner transformation and sort the
data for better performance.
While using the sorter transformation, configure sorter cache size to be larger than the input
data size.
Configure the sorter cache size setting to be larger than the input data size while using sorter
transformation.
At the sorter transformation, use hash auto keys partitioning or hash user keys partitioning.
Solution:
Create a new mapping m_Employees_Sorter by Go to toolbar -> click mapping-> Create
Drag Source (HR.Employees) and Target (TARGET.Employees) to the mapping.
Add Sorter Transformation by Go to Toolbar->click Transformation -> Create. Select the Sorter
transformation
Name it srt_Employees.
Drag all the columns from the source qualifier and drop them to the sorter transformation
Double click on srt_Employees and navigate to the Ports tab. Check Key for those columns
those you want to sort in Ascending/Descending order. In our case well select the
DEPARTMENT_ID as the key:
Click OK
Drag all the ports from srt_Employees to the target table Employees:
Click on Mapping ( from tool bar) -> then Validate ( to validate the mapping)
Now save the mapping ( by clicking on Repository-> Save or you can also press Ctrl+S)
Generate the workflow and run it
Sorter Transformation Example with more than 1 key
Problem statement: Sort the employee table based on their DEPARTMENT_ID and SALARY.
Solution:
Use the previous example, only in the Ports tab of the sorter transformation select SALARY and
DEPARTMENT_ID as keys. Also shift SALARY below DEPARTMENT_ID in the list as the column which
comes first in the list has priority in sort order.
Sorter Transformation to get unique records after Union
Problem Statement: Remove the duplicate rows coming from the union transformation before
loading into the target table.
Solution:
Use the mapping that weve previously created for Union transformation example:
Disconnect the links from the union transformation to the target table and insert a sorter
transformation between them. Link the output ports of the union transformation to the sorter
tranformation:
In the Properties tab select the Distinct option. Youll notice that in the Ports tab all the
columns automatically get selected as Key:
Click OK
Drag all the ports from srt_Employees to the target table Employees:
Click on Mapping ( from tool bar) -> then Validate ( to validate the mapping)
Now save the mapping ( by clicking on Repository-> Save or you can also press Ctrl+S)
Generate the workflow and run it