Tuesday, February 26, 2013

Archive for the ‘Informatica Interview Questions’ Category


In incremental aggregation, the aggregate calculations are stored in historical cache on the server. In this historical cache the data need not be in sorted order.  If you give sorted input, the records come as presorted for that particular run but in the historical cache the data may not be in the sorted order. That is why this option is not allowed.

Union is an active transformation because it combines two or more data streams into one. Though the total number of rows passing into the Union is the same as the total number of rows passing out of it, and the sequence of rows from any given input stream is preserved in the output, the positions of the rows are not preserved, i.e. row number 1 from input stream 1 might not be row number 1 in the output stream. Union does not even guarantee that the output is repeatable.

The following rules and guidelines need to be taken care while working with union transformation:
  • You can create multiple input groups, but only one output group.
  • All input groups and the output group must have matching ports. The precision, datatype, and scale must be identical across all groups.
  • The Union transformation does not remove duplicate rows. To remove duplicate rows, you must add another transformation such as a Router or Filter transformation.
  • You cannot use a Sequence Generator or Update Strategy transformation upstream from a Union transformation.
  • The Union transformation does not generate transactions.

Yes. As an instance of the reusable transformation created in the mapping belongs to that mapping only.

NO. We can use the mapping parameters or variables only in the transformations of the same mapping or mapplet in which we have created the mapping parameters or variables.

Status code provides error handling for the informatica server during the session. The stored procedure issues a status code that notifies whether or not stored procedure completed successfully. This value cannot seen by the user. It only used by the informatica server to determine whether to continue running the session or stop.

The Lookup transformation must be a connected transformation.
1. You can use a persistent or a non-persistent cache.
2. If the dynamic cache is not persistent, the Informatica Server always rebuilds the cache from the database, even if you do not enable Recache from Database.
3. You cannot share the cache between a dynamic Lookup transformation and static Lookup transformation in the same target load order group.
4. You can only create an equality lookup condition. You cannot look up a range of data.
5. Associate each lookup port (that is not in the lookup condition) with an input port or a sequence ID.
6. Only connect lookup/output ports to the target table instead of input/output ports. When you do this, the Informatica Server writes the same values to the lookup cache and the target table, keeping them synchronized.
7. When you use a lookup SQL override, make sure you map the correct columns to the appropriate targets for lookup.
8. When you add a WHERE clause to the lookup SQL override, use a Filter transformation before the Lookup transformation. This ensures the Informatica Server only inserts rows in the dynamic cache and target table that match the WHERE clause. For details, see Using the WHERE Clause with a Dynamic Cache.
9. When you configure a reusable Lookup transformation to use a dynamic cache, you cannot edit the condition or disable the Dynamic Lookup Cache property in a mapping.
10. Use Update Strategy transformations after the Lookup transformation to flag the rows for insert or update for the target.
11. Use an Update Strategy transformation before the Lookup transformation to define some or all rows as update if you want to use the Update Else Insert property in the Lookup transformation.
12. Set the row type to Data Driven in the session properties.
13. Select Insert and Update as Update for the target table options in the session properties.

You should configure the mapping with the least number of transformations and expressions to do the most amount of work possible. You should minimize the amount of data moved by deleting unnecessary links between transformations. For transformations that use data cache (such as Aggregator Joiner Rank and Lookup transformations) limit connected input/output or output ports. Limiting the number of connected input/output or output ports reduces the amount of data
the transformations store in the data cache.
You can also perform the following tasks to optimize the mapping:
1. Configure single-pass reading.
2. Optimize datatype conversions.
3. Eliminate transformation errors.
4. Optimize transformations.
5. Optimize expressions.

Go to Session Properties –> Config Object –> Log Options
Select the properties as follows….
Save session log by –> SessionRuns
Save session log for these runs –> Change the number that you want to save the number of log files (Default is 0)
If you want to save all of the logfiles created by every run, and then select the option Save session log for these runs –> Session TimeStamp
You can find these properties in the session/workflow Properties.

Changed Data Capture (CDC) helps identify the data in the source system that has changed since the last extraction. With CDC data extraction takes place at the same time the insert update or delete operations occur in the source tables and the change data is stored inside the database in change tables.
The change data thus captured is then made available to the target systems in a controlled manner.

No comments:

Post a Comment