Sunteți pe pagina 1din 2

Static cache: U can configure a static or read-only cache for only lookup table.

By default
informatica server creates a static cache. It caches the lookup table and lookup values
in the cache for each row that comes into the transformation. When the lookup condition is
true, the informatica server does not update the cache while it processes the lookup
transformation.
Dynamic cache: If you want to cache the target table and insert new rows into cache and
the target, you can create a look up transformation to use dynamic cache. The informatica
server dynamically inserts data to the target table.
shared cache: You can share the lookup cache between multiple transactions.you can
share unnamed cache between
Persistent cache: You can save the lookup cache files and reuse them the next time the
informatica server processes a lookup transformation configured to use the cache.
Recache from database: If the persistent cache is not synchronized with he lookup table,
yoU can configure the lookup transformation to rebuild the lookup cache.

What is Lookup
Lookup is a transformation to look up the values from a relational table/view or a flat file. The developer defines
the lookup match criteria. There are two types of Lookups in Powercenter-Designer, namely; 1) Connected
Lookup 2) Unconnected Lookup . Different caches can also be used with lookup like static, dynamic, persistent,
and shared(The dynamic cache cannot be used while creating an un-connected lookup). Each of these has its
own identification. For more details, the book "Informatica Help" can be useful.
Hope you are aware with the basics of Informatica. Now proceeding through lookup transformation.
Lookup transformation is Passive and it can be both Connected and UnConnected as well. It is used to look up
data in a relational table, view, or synonym. Lookup definition 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 and assume that the sales data
resides in another table called 'Sales'. Here instead of using the sales table as one more source, use Lookup
transformation to lookup the data for the product, with ID 10 in sales table.
Difference between Connected and UnConnected Lookup Transformation:
1. Connected lookup receives input values directly from mapping pipeline whereas UnConnected lookup receives
values from: LKP expression from another transformation.
2. Connected lookup returns multiple columns from the same row whereas UnConnected lookup has one return
port and returns one column from each row.
3. Connected lookup supports user-defined default values whereas UnConnected lookup does not support user
defined values.

[edit]
Example
Select dname from dept,emp where: emp.deptno=dept.deptno

[edit]

Connected LKPs
1.
2.
3.
4.
5.
6.
7.

Connected LKP trasformation is one which is connected to Pipe line.


Connected LKP trasformation will process each and every Row.
If you want to Use Dynamic LKP cache, use the connected LKP transformation.
If the LKP condition is not matched the LKP transformation will return the Default Value.
it cannot be called
it returns multiple values.
it can use static or dynamic cache

[edit]
Unconnected LKPs
1.
2.
3.
4.
5.
6.
7.

Unconnected LKP trasformation is one which is not connected to the Pipe line.
It should be called either from expression or Update Strategy.
It will not process each and evry row. It will return the values based expression Condition.
If no match found for the LKP condition, the LKP transformation will return Null Values.
it is a reusable trnsformation. The same LKP trnans can be called multiple times in same mapping
it will return only one value.
it can use only static cache

Unconnected lookup will be used if we need to use same lookup tx multiple times within
the same mapping.
Connected lookup will be used if we need to use a lookup Tx only once in a mapping.
Differance B/w Dynamic and static lookup:
1.if we use Dynamic lookup, the Integration service wll query the lookup source once
and builds a cache which can be inserted/updated based on the availability of new
records and the changes in the source records before loading to target table.
If we use static lookup, the cache will be build by the integration service when the a
row from the source requests lookup first time. Integration Service doesn't
inserts/updates the lookup cache based on the new rows/changes from the source
2.Static lookup could be both connected and unconnected whereas Dynamic lookup will
be only connected.
3.static lookup will not consume much memory when compared to Dynamic lookup.
Dynamic lookup wll be used if there is a chance of getting a new record and a change in
that record as 2 differant rows in a single session run.
Ex: row1:creation of a Customer c1 data; Row2: Changing the profile of the same
customer c1. Here , row 1 should be inserted to target and row2 should be updated to
target.
Static lookup will be used if there is no chance to get above case.

S-ar putea să vă placă și