Professional Documents
Culture Documents
Best Practices When Building Maps
Best Practices When Building Maps
When you build maps try to use the following steps. Sometimes this can help clarify
"how" to architect the database. Before beginning ask the following questions:
1. How much data is there passing through this map?
2. What is the source, target, aggregator, and lookup sizes (in terms of Rows and
Megabytes of space)?
3. What is the time frame this map is expected to run in?
4. Are we loading data over the network?
5. Are we waiting on a flat file? More than one?
6. Is there a way to balance the size of the source / target and maybe eliminate
the lookups by utilizing Database Routines?
7. Is the speed such a problem that we must eliminate aggregators?
8. Can we tune the SQL on the source qualifier?
9. Do we need to generate new sequence ID numbers for each row?
/var/www/apps/conversion/tmp/scratch_6/253943817.doc
ONE MAP PER TARGET TABLE. This rule forces you to think about where and
how the logic will be applied. However, it allows us to control the load order by
constraints, as well as which maps and sessions can be run concurrently. It also
forces you to think about how to apply common logic in the most efficient
manner. Another benefit is that all of the data that flows in to that target goes
through the same set of business rules designed for the target fields.
On some occasions (due to lack of speed) we need to take this further, one map
per target per action. Where the action is Insert, Update, or Delete.
In breaking the maps out like this, it keeps maps simple and maintainable. Each
map is therefore responsible for a single set of business rules, as well as a single
task.
/var/www/apps/conversion/tmp/scratch_6/253943817.doc