Pages

Subscribe:

Wednesday, February 23, 2011

Informatica Interview Questions and Answers.

1.What is the difference between Static and Dynamic Lookup cache?

Ans:

When the Lookup Caching Enabled option is selected while configuring a Lookup Transformation the Power Center Server creates a cached lookup that is either static or dynamic.

Static Lookup Cache

When the Dynamic Lookup Cache lookup property is not selected the cache is static and the data in the cache will stay the same for the entire session. Power Center does not update the cache while it processes the transformation.

Dynamic Lookup Cache

When the Lookup Caching Enabled and Dynamic Lookup Cache lookup properties are selected the lookup cache is dynamic.
Each time the Server executes the session, whenever a row is inserted, updated or deleted to or from a target table, the cache will also be updated.

Note

When Lookup cache persistent is also enabled, then the same data can be used in the cache every time the session runs.

More information

When a dynamic lookup cache is used the Power Center server creates a memory cache based on the cache partitioning. Whenever a cache partition is used, Power Center creates one memory for each partition. If you do not use cache partitioning, the Power Center Server creates one memory cache and one disk cache for each transformation. When Lookup transformations share a Dynamic cache; the Power Center Server updates the memory cache and disk cache.

2. Can Persistent Lookup cache be used with Power Center sessions running concurrently?

Ans: While running a session with the Persistent Lookup cache option enabled, the data is written to a cache file.
Power Center server creates a lock file with .lck extension for the cache file.

Persistent Lookup cache can be used across multiple lookup transformations in a mapping and across different mappings also.
The cache files are treated as objects and before Power Center moves data from these file to memory cache, it should acquire lock on the cache files.

When Persistent Lookup cache is to be used across different mappings, a name for the cache files (named cache) has to be specified.
The sessions running concurrently may fail if they fail to create a lock on the named cache file.
Also, since the cache files are treated as objects, other sessions may go to WAITING state while one session acquired the lock on the cache file.

Therefore, it is not recommended to use Persistent Lookup cache across session running concurrently since
the session cannot concurrently read the cache file.

3. what is the main differences between Lookup, Join and Merge
stages?

Ans: The 3 stages differ mainly in the memory they use,
treatment of rows with unmatched & their requirements for
data being input.
In detailed:
Lookup is used for less amount of data because it will
takes the data from source and store in buffer so every
time it process from buffer.
Join is used for huge amount of data because it directly
takes the data from disk so it process faster than lookup.
Joiner is used to join with different join conditions.
Merge is also used for huge amount of data. Merge has the
same number of reject links as there are updated updated
input links.

Basically Join is used when you have large amount of data
about in millions and it performs inner join,left
outer,right outer and full outer joins
The join stage requires the incomming data to be hash
partitioned and sorted on the joining keys

The look up is used when the reference records are fewer in
number about less than one lakh and it doesnot require the
incomming source data to be sorted, instead the refrence
link should be in Entire partition mode.

In look up there are two types
Normal and Sparse
Sparse is available only when the reference is a database.
usually Normal has to be used unless when the refrence to
source rows ratio is 100:1

1 comments: