Monday, October 22, 2012

Difference between partitioning at the database level and informatica level


Difference between partitioning at the database level and informatica level
Informatica Partitioning is "how to load the data efficiently"
When you configure the partitioning information for a pipeline, you must define a partition type at each partition point in the pipeline. The partition type determines how the Integration Service redistributes data across partition points.

Database Partitioning is " how to store the data efficiently and how to retrieve the same"
Informatica can also use the database partitioning as follows:

Database partitioning. The Integration Service queries the IBM DB2 or Oracle database system for table partition information. It reads partitioned data from the corresponding nodes in the database. You can use database partitioning with Oracle or IBM DB2 source instances on a multi-node tablespace. You can use database partitioning with DB2 targets.

1. When you use source database partitioning, the Integration Service queries the database system catalog for partition information. It distributes the data from the database partitions among the session partitions.
2. If the session has more partitions than the database, the Integration Service generates SQL for each database partition and redistributes the data to the session partitions at the next partition point.

Partitioning will not always increase the performance
Session performance with partitioning depends on the data distribution in the database partitions. The Integration Service generates SQL queries to the database partitions. The SQL queries perform union or join commands, which can result in large query statements that have a performance impact. 

No comments:

Post a Comment