Professional Documents
Culture Documents
Performance Tuning
OBJECTIVE
• Target
• Source
• Mapping
• session
• System
Target bottleneck
Causes:
• Small check point intervals , small database
network packet size , problems during heavy
loading operations .
If Relational table as target:
• Check by populating the records to a flat file.
If Flat file as target:
• check by populating the records to a flatfile in
local power center server.
Optimizing methods for relational
target:
2.Increasing Checkpoint Intervals
Single Passing
Source Target
System 1 Aggregator1
Source
Exp
Qualifier
Source
System 2 Aggregator2 Target
Look up Optimization:
• Implement caching the lookup table
• Reduce the Number of Cached Rows by using
lookup sql override.
• Always use equal ( = ) sign first in lookup condition
then use other signs such as <, >, <= ,>= , !=
etc.,
• Use index in the lookup table.
Filter Optimization:
• filter rows in sql override in source qualifier
transformation itself.
• move the Filter transformation as close to the
source qualifier.
• avoid using complex expressions in filter condition.
• Use a Filter or Router transformation to drop
rejected rows from an Update Strategy
transformation .
Aggregator Transformation:
• often slow performance because they must group
data before processing it.
• It need additional memory to hold intermediate
group results.
Optimizing Methods:
• Use simple columns i.e number instead of strings
and dates for group by clause.
• Use sorted input which decreases the use of
aggregate caches
• when changed rows < target rows then Use
“incremental aggregation “ which present in the
session properties.
Joiner:
• need additional space at run time to hold
intermediate results.
• uses data cache to hold the master table rows
and an index
cache to hold the join columns from the master
table.
Optimizing joiner transformation:
• Ensure sufficient memory to hold the data cache
and the
index cache .
• Use smaller table as a master table.
• Normal joins are faster than outer joins.
• Use database joins for homogenous sources
Optimizing Sequence generator:
• Create single seq.generator transformation and
use it for multiple pipeline in a single mapping
instead of using different sequence generator for
each pipe line.
• configure the Number of Cached Values property
approx.,>1000 but not too small.
Optimize expressions:
• Remove expressions one-by-one to isolate the
slow expressions.
Steps to optimize:
• Factoring Out Common Logic
• Minimizing Aggregate Function Calls
• Choosing DECODE versus LOOKUP
• Using Operators Instead of Functions
Evaluating Expressions:
If you are not sure which expressions slow
performance ,then
• Time the session with the original expressions.
• Copy the mapping and replace half of the
complex expressions with a constant.
• Run and time the edited session.
• Make another copy of the mapping and replace
the other half of the complex expressions with a
constant.
• Run and time the edited session.
Session optimizing