What is Dimensional Modelling?

Created by Ali McGregor, Modified on Mon, 7 Aug, 2023 at 10:02 PM by Ali McGregor

What is Dimensional Modelling?

Dimensional Modelling (DM) is a data structure technique optimized for data storage in a Data warehouse. The purpose of dimensional model is to optimize the database for fast retrieval of data. The concept of Dimensional Modelling was developed by Ralph Kimball and consists of "fact" and "dimension" tables.


A Dimensional model is designed to read, summarize, analyse numeric information like values, balances, counts, weights, etc. in a data warehouse. In contrast, relation models are optimized for addition, updating and deletion of data in a real-time Online Transaction System.


These dimensional and relational models have their unique way of data storage that has specific advantages.


For instance, in the relational mode, normalization and ER models reduce redundancy in data. On the contrary, dimensional model arranges data in such a way that it is easier to retrieve information and generate reports.


Often in Power BI, articles will relate to the “star schema” which is based on dimensional modelling.


Elements of Dimensional Data Model

Fact

Facts are the measurements/metrics or facts from your business process. For a Sales business process, a measurement would be quarterly sales number.


Dimension

Dimension provides the context surrounding a business process event. In simple terms, they give who, what, where of a fact. In the Sales business process, for the fact quarterly sales number, dimensions would be

  • Who – Customer
  • Where – Location
  • What – Product

In other words, a dimension is a window to view information in the facts.


Attributes

The Attributes are the various characteristics of the dimension.

In the Location dimension, the attributes can be

  • State
  • Country
  • Postcode etc.

Attributes are used to search, filter, or classify facts. Dimension Tables contain Attributes.


Fact Table

A fact table is a primary table in a dimensional model.

A Fact Table contains

 

  • Measurements/facts
  • Foreign key to dimension table


Dimension table

A dimension table contains dimensions of a fact.

  • They are joined to fact table via a foreign key.
  • Dimension tables are de-normalized tables.
  • The Dimension Attributes are the various columns in a dimension table
  • Dimensions offers descriptive characteristics of the facts with the help of their attributes
  • No set limit set for given for number of dimensions
  • The dimension can also contain one or more hierarchical relationships

 

Useful resources

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article