Differences between partitioning methods

Start of changeWhen possible, use table-controlled partitioning instead of index-controlled partitioning.End of change

DB2® supports two types of partitioning for partitioned table spaces (non-universal):

index-controlled partitioning
Partitioning is controlled by an index called a partitioning index. When you define a partitioning index on a table in a partitioned table space, you specify the partitioning key and the limit key values in the PARTITION clause of the CREATE INDEX statement.
table-controlled partitioning
Partitioning is not controlled by an index. You specify the partitioning key and the limit key values for a table in a partitioned table space by using the PARTITION BY clause and the PARTITION ENDING AT clause of the CREATE TABLE statement. When you use this type of partitioning, an index is not required for partitioning.

The following table lists the differences between the two partitioning methods.

Table 1. Differences between table-controlled and index-controlled partitioning
Table-controlled partitioning Index-controlled partitioning
A partitioning index is not required; a clustering index is not required. A partitioning index is required; a clustering index is required.
Multiple partitioned indexes can be created in a table space. Only one partitioned index can be created in a table space.
A table space partition is identified by both a physical partition number and a logical partition number. A table space partition is identified by a physical partition number.
The high-limit key is always enforced. The high-limit key is not enforced if the table space is non-large.

Start of changeTo prevent the creation of any new partitioned tables that use index-controlled partitioning, set the PREVENT_NEW_IXCTRL_PART subsystem parameter to YES.End of change