Primary indexes can be partitioned or nonpartitioned.
A nonpartitioned primary index (NPPI) is the traditional primary index by which rows are assigned to AMPs.
A partitioned primary index (PPI) allows rows to be partitioned, based on a set of columns, on the AMP that contains them, and ordered by the hash of the primary index columns within the partition.
A PPI can improve query performance through partition elimination. A PPI provides a useful alternative to an NPPI for executing range queries against a table, while still providing efficient access, join, and aggregation strategies on the primary index.
A multilevel PPI allows each partition at a level to be subpartitioned based on a partitioning expression, where the maximum number of levels is 15.
A multilevel PPI provides multiple access paths to the rows in the base table and can improve query performance through partition elimination at each level or combination of levels.
A PPI can only be defined as unique if all the partitioning columns are included in the set of primary index columns.