Optimizing
Datatype Conversions
For example, if your mapping moves data from
an Integer column to a Decimal column, then back to an Integer column, the
unnecessary datatype conversion slows performance. Where possible, eliminate
unnecessary datatype conversions from mappings.
Some datatype conversions can improve system
performance. Use integer values in place of other datatypes when performing
comparisons using Lookup and Filter transformations.
For example, many databases store U.S. zip code
information as a Char or Varchar datatype. If you convert your zip code data to
an Integer datatype, the lookup database stores the zip code 94303-1234 as
943031234. This helps increase the speed of the lookup comparisons based on zip
code.
If a mapping contains
a Lookup transformation, you can optimize the lookup. Some of the things you
can do to increase performance include caching the lookup table, optimizing the
lookup condition, or indexing the lookup table.
Caching Lookups
If a mapping contains
Lookup transformations, you might want to enable lookup caching. In general,
you want to cache lookup tables that need less than 300MB.
When you enable
caching, the Informatica Server caches the lookup table and queries the lookup
cache during the session. When this option is not enabled, the Informatica
Server queries the lookup table on a row-by-row basis. You can increase
performance using a shared or persistent cache:
Shared cache. You can share the
lookup cache between multiple transformations. You can share an unnamed cache
between transformations in the same mapping. You can share a named cache
between transformations in the same or different mappings.
Persistent cache. If you want to save
and reuse the cache files, you can configure the transformation to use a persistent
cache. Use this feature when you know the lookup table does not change between
session runs. Using a persistent cache can improve performance because the
Informatica Server builds the memory cache from the cache files instead of from
the database.
Reducing the Number of Cached Rows
Use the Lookup SQL
Override option to add a WHERE clause to the default SQL statement. This allows
you to reduce the number of rows included in the cache.
Optimizing the Lookup Condition
If you include more
than one lookup condition, place the conditions with an equal sign first to
optimize lookup performance.
Indexing the Lookup Table
The Informatica
Server needs to query, sort, and compare values in the lookup condition
columns. The index needs to include every column used in a lookup condition.
You can improve performance for both cached and uncached lookups:
Cached lookups. You can improve
performance by indexing the columns in the lookup ORDER BY. The session log
contains the ORDER BY statement.
Comments
Post a Comment