Informatica interview questions


Published on

Published in: Software, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Informatica interview questions

  1. 1. INFORMATICA INTERVIEW QUESTIONS 1) What are the transformation have you used in your project? 1. Expression 2. Filter 3. Source Qualifier 4.Joiner 5.Aggregator 6. Sequence Generator 7.Union 8. Router transformation 9.Normalizer 10. Lookup 11. Update strategy 12.Stored Procedure Transformation 2) How do you remove the duplicates rows from SQL table source when we read the data through source qualifier? Enable distinct in source qualifier properties. 3) How do you remove the duplicates rows from flat file source when we read the data through source qualifier? We cannot use source qualifier distinct property for flat file source. So we need to place a sorter transformation after source qualifier and enable distinct sorter transformation properties. 4) What is the difference between source qualifier join and joiner transformation? Source qualifier join can be used when sources are sql tables or views and it cannot be used for hetrogenious sources ( joining for flat file and sql table) whereas joiner transformation can be used to join any type of source data. 5) What is active and passive Transformation? An active transformation does not change the number of rows that pass through it, such as a filter transformation that removes rows that do not meet the filter condition. A passive transformation does not change the number of rows that pass through it,such as an Expresssion transformation that performs a calculation on data and passes all rows through the transformation. 6) What is the difference between Router transformation and Filter Transformation? Router transformation can be used to route the data based on multiple filter conditions whereas filter transformation can have only one filter condition to route the data.In simpler words, router transformation is equal to multiple filter transformation. Router transformation will be useful if we want to capture the rows which are not met with filter condition also.( Default group from router transformation) 7) What is the difference between source definition and Source Qualifier? A source definition database contain the datatypes that are used in the orginal database from which the source is extracted. where the source qualifier is used to convert the source definition datatypes to the informaticadatatypes. which is easy to work with. 8) I have created a sequence Generator with start value of 1000 and the session started the sequence value from 1 instead of 1000. What is the issue here? If we want to start sequence generator from other than 1 we have to change start value as well as current value in sequence generator propery.
  2. 2. 9) What are the different type of joins available in Joiner Transformation? Normal Join, Master outer join, Detail Outer join and Full outer join. 10) What does Master outer and Detail outer join do? Master Outer Join : Will bring all the rows from detail and matched rows from Master Detail Outer Join : Will bring all the rows from Master and matched rows from Detail 11) How do you change the Master and Detail rows in Joiner if you want to switch the source table between master and detail? Select or Unselect on any column of source 1 data and source 2 data in Joiner transformation port tab's M column. 12) Which source data has to be used as Master in Joiner transformation? The source which has fewer number of rows can be used as Master to improve the performance. The reason to do that is Joiner transformation will cache all master data in cache files and if we use source data which has more rows as master then all the rows will be cached and may create cache overflow and will slow down the mapping performance. 13) What is mapping in Informatica? Mapping is an Informatica object which provides instruction to informatica integration service that how to extract,transform and load from source to targets. 14) How do you improve the performance of Joiner Transformation? 1. Use fewer rows source table as Master 2. Index relational table in database based on the column which we use in joiner condition 3. Sort source data based on joiner condition columns. 4. Increase cache files and index files. 15) What transformation would you use to merge two sources data? UNION transformation can be used to merge two or more sources data. 16) I created a filter transformation and checked the output and found that the filter is not working as expected rather it brings all the data from the source. What is the issue here? The issue is the filter condition was not given. When we create filter transformation, Informatica will assign TRUE as filter condition 17) How do you filter the rows in Source Qualifier itself without adding another Filter condition? It can be achieved by adding filter condition in source qualifier properties tab source filter row.But this would work only for database table sources and cannot be used for flat file or XML sources. 18) How do you sort the rows in source Qualifier without adding additional sorter transformation? We can use Number of sorted inputs property in source qualifier and source will be sorted based on number of columns specified in the property.This will not work for flat file or XML source.
  3. 3. 19) How do you define user defined join in source qualifier? We can use user-defined join property and this will not work for flat file or XML sources.Both the source tables have to be relational table. 20) How do I use SQL function to transform the data in source qualifier without additional expression transformation? The SQL functions can be used in SQL select query and place the query in SQL Query property to override the SQL query which will get generate by informatica integration service.This cannot be used for flat file or XML sources. 21) How do you remove the duplicates from source qualifier if the source type is relational table? Enable select distinct property in Source qualifier. 22) What are the client tools Informatica has? 1. Mapping Designer 2. Repository Manager 3. Workflow Manager 4. Workflow Monitor. 23) What is the use of Repository Manager? 1.Export and Import multiple mapping’s/workflows in XML file 2.Change password for current user ID 3.Compare mappings and workflows 4.Create folder 5.Add repository 24) What is Normalizer transformation and why do we need this? Normalizer transformation used to Normalize the data. It means that if the data has same type of values in multiple columns in a single row, and if we want to convert that into multiple rows. Source Data : Sales by store in each quarter Store1 100 300 500 700 Store2 250 450 650 850 Normalizer can be used to convert the data as below Store Sales Quarter -------- --------- ----------- Store1 100 1 Store1 300 2 Store1 500 3 Store1 700 4 Store2 250 1 Store2 450 2 Store2 650 3 Store2 850 4
  4. 4. 25) What is Mapping designer? 1. Is a visual aid to creating and editing source to target mappings. 2. Sources, targets and transformation objects can be dragged and dropped into a workspace to construct the transformation pipeline. 26) Explain Aggregator Transformation? Aggregator works same as SQL GROUP BY and aggreagation functions. It groups the data and use aggeregation function to calculate values. The aggreagate functions are MAX,MIN,AVG and SUM. 27) How do I achieve SQL GROUP BY and HAVING CLAUSE functionality in Informatica?. (Example SELECT DEPTID,SUM(SALARY) FROM EMPLOYEE GROUP BY DEPTID HAVING SUM(SALARY) >25000 ) Informatica Aggreagator transformation doesn't provide having clause and this can be achieved by additing another filter condition after aggregator transformation to filter the rows. 28) Explain Connected and Unconnected Transformation? Connected transformation can receive multiple inputs and provides multiple outputs and always connected to next transformation. Unconnected A unconnected transformation does not participate in the mapping data flow It can receive multiple inputs and provides single output. 29) What is mapping paramaters and mapping variables? Mapping parameter represents a constant value that you can define before running a session.A mapping parameter retains the same value throughout the entire session.When you use the mapping parameter,you declare and use the parameter in a mapping or mapplet.Then define the value of parameter in a parameter file for the session. Mapping variable represents a value that can change throughout the session.Theinformatica server saves the value of mapping variable to the repository at the end of session run and uses that value next time you run the session. 30) Why we use lookup transformations? Use a Lookup transformation in your mapping to look up data in a relational table or view or flat files. 31) Types of Lookup transformations? 1. Connected Lookup 2. Unconnected Lookup
  5. 5. 32) Difference between connected and unconnected lookup transformation? Connected lookup is connected with another transformation through pipeline. You can use a dymanic or static cache. ( Dynamic cache is required when we use the target table as lookup table and target table is being updated in the same mapping). Will return more than one column values as output. Unconnected lookup is isolated with in the mapping and is called with the help of a Expression Transformation. ( :LKP.Lookup_transformation_name (list of inputs separated by ","). We can only use static cache. Will return one column value or port value as output. ( R designated port) 33) What is a transformation? A transformation is repository object that pass data to the next stage (i.e. to the next transformation or target) with / without modifiying the data. 34) What is reusable transformation? A transformation which can be resused in more than one mapping is reusable transformation. This avoids additional work of creating same transformation again and again in different mapping. 35) Different types of lookup caches? Persistent cache. You can save the lookup cache files and reuse them the next time the Integration Service processes a Lookup transformation configured to use the cache. Static Cache You can configure a static, or read-only, cache for any lookup source. By default, the Integration Service creates a static cache. It caches the lookup file or table and looks up values in the cache for each row that comes into the transformation. When the lookup condition is true, the Integration Service returns a value from the lookup cache. The Integration Service does not update the cache while it processes the Lookup transformation. Dynamic cache. To cache a table, flat file, or source definition and update the cache, configure a Lookup transformation with dynamic cache. The Integration Service dynamically inserts or updates data in the lookup cache and passes the data to the target. The dynamic cache is synchronized with the target. 36) What is Target Load Plan? Target Load plan used to arrange the order of execution of different pipeline in a mapping. For example if we have two separate data load pipeline which loads data from A to B and another pipeline load data from B to C. If order of execution of B to C, then we may end up getting old B data in C table. So A to B pipeline have to happen first.And this can be achieved in Target Load plan option by changing the target load table order. 37) What is update startegy transformation? Transformation to handle changes of existing rows.The existing rows can be handled with insert,delete,update or reject operations. 38) What is data driven option in Treat source rows as property? If we use update startegy to treat the changes with specific handling operation insert,update,delete and reject then we need to enable data driven option for treat source rows as
  6. 6. property in session properties.This means that target table insert,update,delete and reject will be flagged by update strategy and not by session. 39) what is tracing level and what are the types of tracing level? Tracing level determines the amount of information that informatcia server writes in a session log. -- None Integration Service uses the tracing level set in the mapping. -- Terse Integration Service logs initialization information, error messages, and notification of rejected data. -- Normal Integration Service logs initialization and status information, errors encountered, and skipped rows due to transformation row errors. Summarizes session results, but not at the level of individual rows. --Verbose Initialization In addition to normal tracing, the Integration Service logs additional initialization details, names of index and data files used, and detailed transformation statistics. --Verbose Data In addition to verbose initialization tracing, the Integration Service logs each row that passes into the mapping. Also notes where the Integration Service truncates string data to fit the precision of a column and provides detailed transformation statistics. When you configure the tracing level to verbose data, the Integration Service writes row data for all rows in a block when it processes a transformation. 40) What is Normal mode and Bulk Mode? Normal Mode - Sequentially loads the data from source to relation table. And session recovery is possible as it creates database log for each DML operation. Bulk Mode - Loads the data in bulk and session recovery is not possible and doesn't create database log for each DML operation. Performance will be improved if we use bulk mode instead of Normal mode. 41) What is Informatica repository Server and informatica Server? Informatica Repository Server : Manages the mapping and session information in repository database and provides those information to Integration service (Informatica Server) to accomplish source to target data load with defined transformation rules. Informatica Server ( Integration Service) : Extracts the data from source and apply mapping transformation and loads them into target. 42) How to lookup data from multiple tables? Use SQL Override and customize your sql query with join to get data from multiple tables. 43) What is worklet? Worklet is subset of workflow and it will have set of tasks. This can be reused in several workflows for repetitive tasks. 44) What is incremental aggregation? Incremental aggregation is specially used for tune the performance of the aggregator. It captures the change each time (incrementally) you run the transformation and then performs the aggregation function to the changed rows and not to the entire rows. This improves the performance because you are not reading the entire source each time you run the session.
  7. 7. 45) In a joiner trasformation, you should specify the source with fewer rows as the master source. Why? The rows which are marked as Master will be cached and if we select source with fewer rows as master , then the amount of caching would be less. 46) Where is the cache stored in informatica? Cache is stored in the Informatica server memory and over flowed data is stored on the disk in file format which will be automatically deleted after the successful completion of the session run. If you want to store that data you have to use a persistant cache. 47) What is SQL Override? By default informatica server will generate sql query for every action. if that query is not able to perform the exact task we can modify that query or we can generate new one with new conditions and with new constraints. 1. source qualifier 2. lookup 48) What is Shortcut? What is use of it? Shortcut is a facility providing by informatica to share metadata objects across folders without copying the objects to every folder.we can create shortcuts for Source definitions Reusable transformations Mapplets Mappings Target definitions Business components. 49) When you import mapping from one server to another server,how will you avoid overriding sequence generator value? During the import,under global copy options,enable retain sequence generator values check box. 50) How do you track errors in mapping? The data error can be treated in two ways. 1. with customized audit table where we can store the rejected records based on our own error checking routine. 2. The errors which doesn't fall under customized error routine will go to informaticabadfiles directory. 51) Where do you use reusable sequence generator transformation? We used reusable sequence generator transformation in warehouse error audit table where we need to maintain the error sequence number across all mapping and folders. 52) How many types of TASKS we have in Workflomanager? Session,Command,Email,Control,Eventwait,Event Raise