Shared Lookup Cache
A shared lookup cache is a static lookup cache that is shared by multiple Lookup transformations in a mapping. Use a shared lookup cache to decrease the amount of time required to build the cache.
By default, the Integration Service shares the cache for Lookup transformations in a mapping that have compatible caching structures. For example, if a mapping contains two instances of the same reusable Lookup transformation in one mapping and you use the same output ports for both instances, the Lookup transformations share the lookup cache by default.
The Integration Service builds the cache when it processes the first Lookup transformation. It uses the same cache to process subsequent Lookup transformations that share the cache. When the Integration Service shares a lookup cache, it writes a message in the Integration Service log.
The Integration Service allocates data cache memory and index cache memory for the first Lookup transformation. It does not allocate additional memory for subsequent Lookup transformations that share the lookup cache.
If the transformation or the cache structure do not allow sharing, the Integration Service creates a new cache.
Rules and Guidelines for Sharing a Lookup Cache
Consider the following rules and guidelines when you share a lookup cache:
- •You can share one or more static caches with a dynamic lookup. If a dynamic lookup shares the cache with a static lookup in the same mapping, the static lookup reuses the cache created by the dynamic lookup.
- •You cannot share a cache between dynamic lookups.
- •If you configure multiple Lookup transformations to rebuild a persistent lookup cache, the Integration Service builds the cache for the first Lookup transformation, and then shares the persistent lookup cache for the subsequent Lookup transformations.
- •If you do not configure the first Lookup transformation to rebuild a persistent lookup cache, but you configure a subsequent Lookup transformation to rebuild the cache, the transformations cannot share the cache. The Integration Service builds the cache when it processes each Lookup transformation.
- •The lookup/output ports for subsequent Lookup transformations must match or be a subset of the ports in the Lookup transformation that the Integration Service uses to build the cache. The order of the ports do not need to match.
- • Lookup transformations that share the cache must have the following characteristics:
- - The Lookup transformations must use the same ports in the lookup condition.
- - The Lookup transformations must use the same SQL override if one is used.
- - Lookup caching must be enabled in all Lookup transformations.
- - The Lookup transformations must use the same type of lookup source.
- - All relational Lookup transformations must use the same database connection.
- - The Lookup transformations must use the same lookup table name.
- - The structure of the cache for all Lookup transformations must be compatible.