Partitioning a table can improve performance for several types of processes. The reasons for partitioning a table are:
Partitioning allows parallel query processing to access each partition of the table. Each worker process in a partitioned-based scan reads a separate partition.
Partitioning makes it possible to load a table in parallel with bulk copy.
For more information on parallel bcp, see the Utility Programs manual.
Partitioning makes it possible to distribute a table’s I/O over multiple database devices.
Partitioning provides multiple insertion points for a heap table.
The tables you choose to partition depend on the performance issues you encounter and the performance goals for the queries on the tables.
The following sections explain the commands needed to partition tables and to maintain partitioned tables, and outline the steps for different situations.
See “Guidelines for parallel query configuration” for more information and examples of partitioning to meet specific performance goals.