Creating Vertical Partitions

Vertical partitioning consists in segmenting a table into multiple tables each containing a subset of columns and the same number of rows as the partitioned table. The partition tables share the same primary key.

The table Customer contains the following columns:



This table can be divided in two tables corresponding to different aspects of the table. You can use the Vertical Partitioning Wizard to split the table as follows:



Vertical partitioning has the following pros and cons:

Pros

Cons

Improve the query response time

Requires additional joins and unions to retrieve data from multiple tables

Allows you to split data requiring different levels of protection, you can store confidential information in a special partition

Requires more intelligent queries to determine which table contains the requested data

Reduce the load time of indexed tables

Requires additional metadata to describe the partitioned table

You can partition tables vertically using the Vertical Partitioning Wizard. The key columns of the partitioned table are duplicated whereas the other columns are distributed among the partition tables. PowerDesigner verifies that all the columns of the partitioned table are used in the partition tables.

  1. Select Tools > Denormalization > Vertical Partitioning, or right-click a table in the diagram and select Vertical Partitioning, in order to open the Vertical Partitioning Wizard:


  2. Select the table to partition and select the check box if you want to keep the original table after partitioning. Then click Next to go to the Partition Definition page.
  3. The Partition Definition page allows you to create as many partitions as you need with the Insert and Add a row tools. The name of each partition must be unique in the model. A table will be created for each partition you specify, and will take the name of the relevant partition. Then click Next to go to the Discriminant Column Selection page.
  4. The Discriminant Column Selection page allows you to specify which columns will be included in each partition table. Drag columns from the Available columns pane, and drop them onto the appropriate partition table in the Columns distribution pane, or use the Add and Remove buttons at the bottom of each pane. When all your columns are allocated, click Next to go to the Partitioning Information page.
  5. The Partitioning Information page allows you to specify a name and code for the transformation object that will be created together with the partitions. Then click Finish.

    The table is partitioned, a vertical partitioning object is created, and all references to the original table are created on each partition table.