Select Page

Multi-Dimensional Data Model

The multi-dimensional data model is fundamental to data warehousing and business intelligence. It allows data to be modeled and viewed in multiple dimensions, facilitating complex queries and analysis. This model supports various perspectives and levels of detail, making it ideal for reporting and analytical purposes.

Key Concepts of Multi-Dimensional Data Model

  1. Dimensions:
    • Dimensions are the perspectives or entities with respect to which an organization wants to keep records. They provide the context for facts and are often descriptive.
    • Examples include Time, Geography, Product, Customer, and Sales Channel.
  2. Facts:
    • Facts are the numerical measures that are the focus of analysis and reporting. They are often transactional data.
    • Examples include Sales Amount, Quantity Sold, Profit, and Expenses.
  3. Measures:
    • Measures are the actual values or metrics associated with facts. They are quantifiable data points used for analysis.
    • Examples include revenue figures, unit sales numbers, and profit margins.
  4. Hierarchies:
    • Hierarchies organize the levels of detail within a dimension, allowing data to be viewed at various granularities.
    • Examples include Date (Year → Quarter → Month → Day), Geography (Country → State → City), and Product (Category → Subcategory → Product).
  5. Cubes:
    • A cube is a multi-dimensional array of data, used to represent data along multiple dimensions. It enables quick data retrieval by pre-aggregating data along dimensions.
    • Cubes allow slicing, dicing, drilling down/up, and pivoting for analysis.

Star Schema

The star schema is a type of multi-dimensional model characterized by a central fact table connected to multiple dimension tables. This layout resembles a star.

  • Fact Table:
    • Central table containing factual or quantitative data.
    • Columns include foreign keys to dimension tables and measures.
    • Example: A sales fact table with columns like DateKey, ProductKey, StoreKey, and measures like SalesAmount and QuantitySold.
  • Dimension Tables:
    • Surrounding tables containing descriptive attributes related to facts.
    • Columns include primary keys that link to the fact table and descriptive attributes.
    • Example: A date dimension table with columns like DateKey, Year, Quarter, Month, and Day.

Snowflake Schema

The snowflake schema is a more normalized form of the star schema where dimension tables are further broken down into related tables.

  • Fact Table:
    • Similar to the star schema, containing measures and foreign keys to dimension tables.
    • Example: A sales fact table with columns like DateKey, ProductKey, StoreKey, and measures like SalesAmount and QuantitySold.
  • Normalized Dimension Tables:
    • Dimension tables are normalized into multiple related tables.
    • Reduces redundancy but can complicate queries and decrease performance.
    • Example: A date dimension table broken into Year, Quarter, Month, and Day tables.

Operations on Multi-Dimensional Data Model

  1. Slicing:
    • Selecting a single layer of data from the cube.
    • Example: Viewing sales data for a specific year.
  2. Dicing:
    • Creating a sub-cube by selecting specific values for multiple dimensions.
    • Example: Viewing sales data for a specific year and specific region.
  3. Drill-Down/Drill-Up:
    • Navigating among levels of data hierarchy.
    • Drill-Down: Moving from higher-level summary data to more detailed data.
    • Drill-Up: Moving from detailed data to higher-level summary data.
    • Example: Drilling down from yearly sales data to monthly sales data.
  4. Pivoting (Rotating):
    • Reorienting the data cube to view data from different perspectives.
    • Example: Changing the view from sales by region and product to sales by product and time.


Consider a retail sales data warehouse:

  • Dimensions:
    • Time: Year, Quarter, Month, Day.
    • Product: Category, Subcategory, ProductName.
    • Store: StoreID, StoreName, Location.
  • Fact Table:
    • SalesFact: DateKey, ProductKey, StoreKey, SalesAmount, QuantitySold.
  • Star Schema:
    • SalesFact:
      • DateKey, ProductKey, StoreKey, SalesAmount, QuantitySold.
    • Time Dimension:
      • DateKey, Year, Quarter, Month, Day.
    • Product Dimension:
      • ProductKey, Category, Subcategory, ProductName.
    • Store Dimension:
      • StoreKey, StoreName, Location.

This schema supports querying sales data across different time periods, product categories, and store locations, enabling comprehensive business analysis and decision-making.

The multi-dimensional data model is essential for data warehousing and business intelligence, providing a structured way to organize and analyze large volumes of data across multiple perspectives. Through schemas like star and snowflake, it enables efficient and flexible data querying, facilitating deeper insights and informed decision-making.