Previous Topic: Dimension TableNext Topic: Outrigger Table


Overview of Large Dimension Tables Partitioning

In the case where a denormalized dimension table is extremely large and you need to query a portion of the columns more often than the rest, you may want to break the single dimension table into two separate dimension tables (create a vertical partition) for efficiency. You can then relate the two tables to each other with a non-identifying relationship so that you can browse both dimensions interactively.

For example, if the Customer dimension table contains both customer address and demographic information, users may query the demographic fields such as, age, gender, income_level, and marital_status more frequently than they query the other columns. In this case, separating the demographic columns into another table improves query response time. To maintain the relationship between the demographic and customer columns, the demographic key should be a foreign key in the Customer dimension table.

Partitioning Large Dimension Tables

More information:

Dimension Table