Informatica ETL Interview Questions and Answers – Part 3

Informatica Interview Questions & Answers:

P. How DTM buffer size and buffer block size are related?

  • The number of buffer blocks in a session = DTM Buffer Size / Buffer Block Size. Default settings create enough buffer blocks for 83 sources and targets. If the session contains more than 83, you might need to increase DTM Buffer Size or decrease Default Buffer Block Size.
  • (total number of sources + total number of targets)* 2] = (session buffer blocks)
  • (session Buffer Blocks) = (.9) * (DTM Buffer Size) / (Default Buffer Block Size) * (number of partitions)

Q. Difference between shortcut and reusable transformation?

  • A shortcut is a reference (link) to an object in a shared folder, these are commonly used for sources and targets that are to be shared between different environments / or projects. A shortcut is created by assigning ‘Shared’ status to a folder within the Repository Manager and then dragging objects from this folder into another open folder; This provides a single point of control / reference for the object – multiple projects don’t all have import sources and targets into their local folders.
  • A reusable transformation is usually something that is kept local to a folder, examples would be the use of a reusable sequence generator for allocating warehouse Customer Id’s which would be useful if you were loading customer details from multiple source systems and allocating unique ids to each new source-key. Many mappings could use the same sequence and the sessions would all draw from the same continuous pool of sequence numbers generated.

R. What are the types of  groups in Router transformation?

  • Input Group.
  • Output Group.
  • The designer copies property information from the input ports of the input group to create a set of output ports for each output group.
  • User defined Group.
  • Default group.
  • One cannot modify or delete default groups.

S. What are the out put files that the Informatica server creates during the session running?

  • Informatica server log: Informatica server (on UNIX) creates a log for all status and error messages (default name:pm.server.log). It also creates an error log for error messages. These files will be created in Informatica home directory.
  • Session log file: Informatica server creates session log file for each session. It writes information about session into log files such as initialization process, creation of sql commands for reader and writer threads, errors encountered and load summary. The amount of detail in session log file depends on the tracing level that you set.
  • Session detail file: This file contains load statistics for each target in mapping. Session detail includes information such as table name, number of rows written or rejected. We can view this file by double clicking on the session in monitor window.
  • Performance detail file: This file contains information known as session performance details which helps you where performance can be improved. To generate this file select the performance detail option in the session property sheet.
  • Reject file: This file contains the rows of data that the writer does not write to targets.
  • Control file: Informatica server creates control file and a target file when you run a session that uses the external loader. The control file contains the information about the target flat file such as data format and loading instructions for the external loader.
  • Post session email: Post session email allows you to automatically communicate information about a session run to designated recipients. U can create two different
    messages. One if the session completed successfully the other if the session fails.
  • Indicator file: If u use the flat file as a target, you can configure the Informatica server to create indicator file. For each target row, the indicator file contains a number to indicate whether the row was marked for insert, update, delete or reject.
  • Output file: If session writes to a target file, the Informatica server creates the target file based on file properties entered in the session property sheet.
  • Cache files: When the Informatica server creates memory cache it also creates cache files. For the following circumstances Informatica server creates index and data cache files.

 

Informatica ETL Interview Questions and Answers – Part 2

Informatica Interview Questions & Answers:

H. How to join 2 tables, without using any condition?

  • It is not possible to actually possible to join two tables without using any condition. If we would like to join two tables, then in source qualifier transformation add all the ports from two tables(if both tables are from same database source) and write down your join condition in user defined join option or otherwise write down join condition inside the sql query option with generated sql query.
  • OR simply use a dummy condition like 1=1.

I. Can we return two columns from an unconnected lookup?

  • Yes. Concatenate two columns. However return port will be one.

J. I have an aggregater in my mapping and no group by port on
any column and I am passing 100 rows through aggregater, so how many rows I will get as output from aggregater?

  • Last row only.

K. What is the diff between union, joiner and lookup?

  • Union – Can join two tables without common port.
  • Joiner– Can join any two heterogeneous sources, but common port is necessary.
  • Lookup – We can join two tables by using sql over-ride, apart from that we can check whether the row is already existing or not.

L. What are the similarities/differences between ROUTER and FILTER?

  • Similarity between Router and Filter is that both transformation would be able to discard data based on some filter condition.
  • The Differences are… 1.Using router transformation one would able to test incoming data for multiple filter condition and if none of the condition met the incoming rows gets rerouted to DEFAULT group.
  • 2.Using filter transformation, one would be able to pass data to next transformation based on single filter pipeline condition. There is no option of routing data that doesn’t match the condition like ROUTER Transformation.

M. What is a complex mapping?

A complex mapping  generally will have the following characteristics:

  • Difficult requirement
  • More no.of transformations
  • Having difficult business logic
  • May require combination of two or more methods/combinations
  • Complex business logic
  • More than 30 unconnected lookup

N. Flat file contains n number of records, we have to load the records in target from 51 to 100. How to do that in Informatica?

  • Use sequence generator to get row no. for each record, then use filter giving the condition(row no. greater than 50 and less than 100)

O. What are the limitations for using target load type “Bulk” in the session?

  • Update strategy
  • Less number of records
  • Target should be relational DB
  • No constraints in the target table

 

Next ⇒ Informatica Interview Questions Continued …Page 3

Informatica ETL Interview Questions and Answers – Part 1

Informatica Interview Questions & Answers:

A. What are the differences between Connected and Unconnected
lookup?

  • Connected lookup participates in the mapping(dataflow), just like any other transformation. Unconnected  lookup is used when a lookup function is used instead in an expression transformation in the mapping in which case the lookup does not appear in the main flow (dataflow) of the mapping. Connected lookup can return more than one value(output port) whereas an Unconnected lookup gives only one output port. Unconnected lookups are reusable.
  • Connected transformation is connected to other transformations or directly to target table in the mapping. An unconnected transformation is not connected to other transformations in the mapping. It is called within another transformation, and returns a value to that transformation.

B. When do we use dynamic cache and static cache in connected and unconnected lookup transformations?

  • Dynamic cache used for updation of Master Table & SCD(Slowly Changing Dimensions) type 1.
  • Static used for Flatfile.

C. What is the tracing level?

  • Tracing level means that the amount of data storing in to the log files.
  • Tracing Levels are TERSE,VERBOSE,VERBOSE INITIALIZATION and NORMAL.
  • This is a kind of explanation when a session log is created….
    • Normal: It explains in a detailed manner
    • Verbose: It explains detailed explanation for each and every row

D. How many types of transformations supported by sorted input?

  • Aggregator Transformation,Joiner Transformation and Lookup Transformation support sorted input so that it will increase the session performance.

E. Name 4 output files that Informatica server creates during session running:

  • Session log
  • Workflow log
  • Errors log
  • Badfile

F. what is the difference between stop and abort?

  • Stop command immediately kills the reading process and doesn’t have any timeout period.
  • Abort command gives a time out period of 60 secs to the Informatica server to finish the dtm process else it kills the dtm process.

G. What is Update Override? What are the differences between SQL Override and Update Override?

  • Update Override – It is an option available in TARGET instance. By default, Target table is updated based on Primary key values. To update the Target table on non primary key values, we can generate the default Query and override the Query according to the requirement. Suppose for example, if we want to update the record in target table, when a column value=’AAA’ then, we can include this condition in Where clause of default Query.
  • Coming to SQL override – It is an option available in Source Qualifier and Lookup transformation where we can include joins, filters, Group by and Order by.

 

Next⇒ Informatica Interview Questions Continued …Page 2