|Bookshelf Home | Contents | Index | PDF|
This partitioning method involves adding a column designed specifically for Siebel partitioning with even data distribution. Siebel eBusiness Applications recognize this column by the name PARTITION_COLUMN. This column is populated by a DB2 before insert trigger.
Most Siebel tables are tied together by the ROW_ID column from a parent table. Columns with an _ID suffix are used to define a parent-child relationship, for example, OU_ID. These columns might seem to be good partitioning candidates because they support the DB2 access path; but in fact, these columns are poor candidates for partitioning because ROW_IDs are generated in sequential order.
To resolve the limitation caused by sequential order of ROW_ID, Siebel Systems provides a column, named PARTITION_COLUMN, that is based on the ROW_ID. This column is used only for partitioning purposes. It is a physical column defined in a storage control file, but it is not a part of the Siebel repository.
A DB2 before insert trigger for populating PARTITION_COLUMN values is defined in the Siebel storage control file. The function of this trigger is to extract the last two bytes of a source _ID column and use it to populate PARTITION_COLUMN. By using a trigger to populate the columns, you can partition tables that do not have good candidate columns for a partitioning key due to their data content. Using a trigger, you can still generate values that distribute the data well.
|Implementing Siebel eBusiness Applications on DB2 UDB for z/OS and OS/390|