Rank Transformation in Informatica

08 October, 2020


Related Blogs


What is Rank Transformation ?

The Rank Transformation in Informatica is an active, connected transformation used to select a bottom or top range of data. While string value ports can be ranked, the Informatica Rank Transformation is most commonly used to rank numeric port values. One might think MAX and MIN functions can accomplish this same task. However, the rank transformation allows groups of records to be ranked instead of a single value or record. The rank transformation is created with the following types of ports.

Input port (I) Output port (O) Variable port (V) Rank Port (R)

Rank Port

The port which is participated in a rank calculation is known as Rank port.

Variable Port

A  port that allows you to develop expression to store the data temporarily for rank calculation is known as a variable port. Variable port support to write expressions that are required for rank calculation.

Set the if properties to calculate the ranks

Top or bottom Number of Rank’s

Ports in a Rank Transformation :

Ports Number Required Description
I 1 Minimum Port to receive data from another transformation.
O 1 Minimum Port we want to pass to other transformations.
V not needed can use to store values or calculations to use in an expression.
R Only 1 Rank port. Rank is calculated according to it. The Rank port is an input/output port. We must link the Rank port to another transformation. Example: Total Salary

Configuring the Rank Transformation

Configure the following properties of Rank transformation

Cache Directory: Directory where the integration service creates the index and data cache files.

Top/Bottom: Specify whether you want to select the top or bottom rank of data.

Number of Ranks: specify the number of rows you want to rank.

Case-Sensitive String Comparison: Used to sort the strings using case sensitive or not.

Tracing Level: Amount of logging to be tracked in the session log file.

Rank Data Cache Size: The data cache size default value is 2,000,000 bytes. You can set a numeric value or Auto for the data cache size. In case of Auto, the Integration Service determines the cache size at runtime.

Rank Index Cache Size: The index cache size default value is 1,000,000 bytes. You can set a numeric value or Auto for the index cache size. In case of Auto, the Integration Service determines the cache size at runtime.

If you want to enrich your career and become a professional in Informatica, then visit Tekslate - a global online training platform: "Informatica Training" This course will help you to achieve excellence in this domain.

What is Rank Index ?

The Developer tool creates a RANK INDEX port for each Rank transformation. The Data Integration Service uses the Rank Index port to store the ranking position for each row in a group. After the Rank transformation identifies all rows that belong to a top or bottom rank, it then assigns rank index values. If two rank values match, they receive the same value in the rank index, and the transformation skips the next value.
The RANK INDEX is an output port only. You can pass the rank index to another transformation in the mapping or directly to a target.

Advanced Properties for Rank Transformation

Top/Bottom - Specifies whether you want the top or bottom ranking for a column.
Number of Ranks - Number of rows to include in the top or bottom ranking.
Case-Sensitive - String Comparison Specifies whether the Data Integration Service uses case-sensitive string comparisons when it ranks strings. Clear this option to have the Data Integration Service ignore the case for strings.
Cache Directory- Local directory where the Data Integration Service creates the index cache files and data cache files. Default is the CacheDir system parameter.
Rank Data Cache Size - Data cache size for the transformation. Default is Auto.
Rank Index Cache Size Index - cache size for the transformation. Default is Auto.
Tracing Level - Amount of detail that appears in the log for this transformation. You can choose terse, normal, verbose initialization, or verbose data. Default is normal.
Defining Groups
Like the Aggregator transformation, the Rank transformation lets you group information.
Example: If you want to select the 10 most expensive items by manufacturer, you would first define a group for each manufacturer.

Rank Transformation in Informatica with Examples

Procedure to create and configure Rank Transformation In the Mapping Designer, open a Mapping. Click Transformation > Create. Select Rank transformation. Enter a name and click Done. You will see one port RANK INDEX port already there. This port store the ranking of each  record  and can be used to populate target as well Add all additional port from source input which are going to be used in the following transformation. Open the port tab and first check the Group by option for desired column (for example dept no in our case) Also check the Rank (R) option for the port which you want to do ranking. For example salary in our case. RankTransformation

We can define Group by indicator for multiple ports, but  Ranking can be done on a single port only.

Go to the properties tab, select the Top/Bottom value as Top and the Number of Ranks property as per need.



Click OK.

Connect output ports of Rank Transformation to other transformation or target

For In-depth Knowledge on Informatica, click on below
About Author


Author Bio

TekSlate is the best online training provider in delivering world-class IT skills to individuals and corporates from all parts of the globe. We are proven experts in accumulating every need of an IT skills upgrade aspirant and have delivered excellent services. We aim to bring you all the essentials to learn and master new technologies in the market with our articles, blogs, and videos. Build your career success with us, enhancing most in-demand skills .