Cache: Cache is nothing but collection of data stored in a place.
There are mainly 4 types of lookup caches in informatica.
- Static Lookup Cache
- Dynamic Lookup Cache
- Persistent Lookup Cache
- Shared lookup Cache
Static Lookup Cache:
When session execution started, static lookup cache will be created by integration service. Once the static lookup cache was build, then integration service will query the data from lookup cache instead of database.If the lookup condition is true then static lookup cache will return the data otherwise it will return null.
The main advantage is performance, because if once the cache is build then informatica never try to hit the database to fetch the data from lookup table. So execution time will reduce.
As well as the main disadvantage is, after that cache build any changes happened in lookup table those changes will not be reflected in static cache.In this case we need to rebuild the cache.
Once the session execution completed static lookup cache will automatically destroyed.
Dynamic Lookup cache:
When we choose dynamic lookup cache option in session level properties, the existing cache will be updated when the lookup table updated. That means any inserts or updates happened on target table, same changes will reflect in dynamic lookup cache.
In other words simply we can say, dynamic lookup cache will always be in synchronization with lookup table.
Dynamic cache will also be destroyed when the session execution completed.
Persistent Lookup Cache:
If we select persistent cache in session level properties, infromatica integration server will create the cache file for the lookup table, so it can be used in next time. So this cache can be reused by providing the cache file name in session level properties. Here integration service first will check the cache file existence, if file is already existed then it will use the file otherwise it will create a new file.
It will be very helpful when lookup table data is static.
Integration service won't delete the cache file even after successful session execution.
Shared lookup Cache:
We can share the persistent cache to other lookups by providing the cache name and cache location.
Shared lookup Cache:
We can share the persistent cache to other lookups by providing the cache name and cache location.