Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
ETL Questions

ETL Questions

Ratings: (0)|Views: 788 |Likes:
Published by navaneethvr

More info:

Categories:Types, Resumes & CVs
Published by: navaneethvr on Mar 26, 2010
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less





Informatica – Transformations
In Informatica, Transformations help to transform the source data according to therequirements of target system and it ensures the quality of the data being loadedinto target.Transformations are of two types: Active and Passive.Active TransformationAn active transformation can change the number of rows that pass through it fromsource to target i.e it eliminates rows that do not meet the condition intransformation.Passive TransformationA passive transformation does not change the number of rows that pass through iti.e it passes all rows through the transformation.Transformations can be Connected or UnConnected.Connected TransformationConnected transformation is connected to other transformations or directly totarget table in the mapping.UnConnected TransformationAn unconnected transformation is not connected to other transformations in themapping. It is called within another transformation, and returns a value to thattransformation.Following are the list of Transformations available in Informatica:Aggregator TransformationExpression TransformationFilter TransformationJoiner TransformationLookup TransformationNormalizer TransformationRank TransformationRouter TransformationSequence Generator TransformationStored Procedure Transformation
Sorter TransformationUpdate Strategy TransformationXML Source Qualifier TransformationAdvanced External Procedure TransformationExternal TransformationIn the following pages, we will explain all the above Informatica Transformationsand their significances in the ETL process in detail.Aggregator TransformationAggregator transformation is an Active and Connected transformation. Thistransformation is useful to perform calculations such as averages and sums (mainlyto perform calculations on multiple rows or groups). For example, to calculate totalof daily sales or to calculate average of monthly or yearly sales. Aggregatefunctions such as AVG, FIRST, COUNT, PERCENTILE, MAX, SUM etc. can be used inaggregate transformation.Expression TransformationExpression transformation is a Passive and Connected transformation. This can beused to calculate values in a single row before writing to the target. For example,to calculate discount of each product or to concatenate first and last names or toconvert date to a string field.Filter TransformationFilter transformation is an Active and Connected transformation. This can be usedto filter rows in a mapping that do not meet the condition. For example, to know allthe employees who are working in Department 10 or to find out the products thatfalls between the rate category $500 and $1000.Joiner TransformationJoiner Transformation is an Active and Connected transformation. This can be usedto join two sources coming from two different locations or from same location. Forexample, to join a flat file and a relational source or to join two flat files or to join arelational source and a XML source.In order to join two sources, there must be atleast one matching port. at least onematching port. While joining two sources it is a must to specify one source asmaster and the other as detail.The Joiner transformation supports the following types of joins:NormalMaster OuterDetail Outer
Full OuterNormal join discards all the rows of data from the master and detail source thatdo not match, based on the condition.Master outer join discards all the unmatched rows from the master source andkeeps all the rows from the detail source and the matching rows from the mastersource.Detail outer join keeps all rows of data from the master source and the matchingrows from the detail source. It discards the unmatched rows from the detail source.Full outer join keeps all rows of data from both the master and detail sources.Lookup TransformationLookup transformation is Passive and it can be both Connected and UnConnectedas well. It is used to look up data in a relational table, view, or synonym. Lookupdefinition can be imported either from source or from target tables.For example, if we want to retrieve all the sales of a product with an ID 10 andassume that the sales data resides in another table. Here instead of using the salestable as one more source, use Lookup transformation to lookup the data for theproduct, with ID 10 in sales table.Difference between Connected and UnConnected Lookup Transformation:Connected lookup receives input values directly from mapping pipeline whereasUnConnected lookup receives values from: LKP expression from anothertransformation.Connected lookup returns multiple columns from the same row whereasUnConnected lookup has one return port and returns one column from each row.Connected lookup supports user-defined default values whereas UnConnectedlookup does not support user defined values.Normalizer TransformationNormalizer Transformation is an Active and Connected transformation. It is usedmainly with COBOL sources where most of the time data is stored in de-normalizedformat. Also, Normalizer transformation can be used to create multiple rows from asingle row of data.Rank TransformationRank transformation is an Active and Connected transformation. It is used to selectthe top or bottom rank of data. For example, to select top 10 Regions where thesales volume was very high or to select 10 lowest priced products.

Activity (78)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
Ajay Konidena added this note
good stuff
karuna1342 liked this
karuna1342 liked this
Sridhar Reddy liked this
karuna1342 liked this
karuna1342 liked this
Mukkamil Pittu liked this

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->