Monday, December 17, 2012

Differences between dynamic lookup cache and static lookup cache?


Scenario:

Differences between dynamic lookup cache and static lookup cache?

Solution:

Dynamic Lookup Cache
Static Lookup Cache
In dynamic lookup the cache memory will get refreshed as soon as the record get inserted or updated/deleted in the lookup table.
In static lookup the cache memory will not get refreshed even though record inserted or updated in the lookup table it will refresh only in the next session run.
When we configure a lookup transformation to use a dynamic lookup cache, you can only use the equality operator in the lookup condition.
NewLookupRow port will enable automatically.
It is a default cache.
Best example where we need to use dynamic cache is if suppose first record and last record both are same but there is a change in the address. What informatica mapping has to do here is first record needs to get insert and last record should get update in the target table.
If we use static lookup first record it will go to lookup and check in the lookup cache based on the condition it will not find the match so it will return null value then in the router it will send that record to insert flow.
But still this record dose not available in the cache memory so when the last record comes to lookup it will check in the cache it will not find the match so it returns null value again it will go to insert flow through router but it is suppose to go to update flow because cache didn’t get refreshed when the first record get inserted into target table.

2 comments:

Thank you :
- kareem