Dimensional Data Modeling
Last Updated :
10 Jun, 2023
Popular Schema – Star Schema, Snow Flake Schema
Dimensional Data Modeling is one of the data modeling techniques used in data warehouse design. The concept of Dimensional Modeling was developed by Ralph Kimball which is comprised of facts and dimension tables. Since the main goal of this modeling is to improve the data retrieval so it is optimized for SELECT OPERATION. The advantage of using this model is that we can store data in such a way that it is easier to store and retrieve the data once stored in a data warehouse. The dimensional model is the data model used by many OLAP systems.
Elements of Dimensional Data Model
Facts
Facts are the measurable data elements that represent the business metrics of interest. For example, in a sales data warehouse, the facts might include sales revenue, units sold, and profit margins. Each fact is associated with one or more dimensions, creating a relationship between the fact and the descriptive data.
Dimension
Dimensions are the descriptive data elements that are used to categorize or classify the data. For example, in a sales data warehouse, the dimensions might include product, customer, time, and location. Each dimension is made up of a set of attributes that describe the dimension. For example, the product dimension might include attributes such as product name, product category, and product price.
Attributes
Characteristics of dimension in data modeling are known as characteristics. These are used to filter, search facts, etc. For a dimension of location, attributes can be State, Country, Zipcode, etc.
Fact Table
In a dimensional data model, the fact table is the central table that contains the measures or metrics of interest, surrounded by the dimension tables that describe the attributes of the measures. The dimension tables are related to the fact table through foreign key relationships
Dimension Table
Dimensions of a fact are mentioned by the dimension table and they are basically joined by a foreign key. Dimension tables are simply de-normalized tables. The dimensions can be having one or more relationships.
Types of Dimensions in Data Warehouse Model
- Conformed Dimension
- Outrigger Dimension
- Shrunken Dimension
- Role-Playing Dimension
- Dimension to Dimension Table
- Junk Dimension
- Degenerate Dimension
- Swappable Dimension
- Step Dimension
Steps to Create Dimensional Data Modeling
Step-1: Identifying the business objective: The first step is to identify the business objective. Sales, HR, Marketing, etc. are some examples of the need of the organization. Since it is the most important step of Data Modelling the selection of business objectives also depends on the quality of data available for that process.
Step-2: Identifying Granularity: Granularity is the lowest level of information stored in the table. The level of detail for business problems and its solution is described by Grain.
Step-3: Identifying Dimensions and their Attributes: Dimensions are objects or things. Dimensions categorize and describe data warehouse facts and measures in a way that supports meaningful answers to business questions. A data warehouse organizes descriptive attributes as columns in dimension tables. For Example, the data dimension may contain data like a year, month, and weekday.
Step-4: Identifying the Fact: The measurable data is held by the fact table. Most of the fact table rows are numerical values like price or cost per unit, etc.
Step-5: Building of Schema: We implement the Dimension Model in this step. A schema is a database structure. There are two popular schemes: Star Schema and Snowflake Schema.

Dimensional Data Modeling Steps
Dimensional data modeling is a technique used in data warehousing to organize and structure data in a way that makes it easy to analyze and understand. In a dimensional data model, data is organized into dimensions and facts.
Overall, dimensional data modeling is an effective technique for organizing and structuring data in a data warehouse for analysis and reporting. By providing a simple and intuitive structure for the data, the dimensional model makes it easy for users to access and understand the data they need to make informed business decisions
Advantages of Dimensional Data Modeling
- Simplified Data Access: Dimensional data modeling enables users to easily access data through simple queries, reducing the time and effort required to retrieve and analyze data.
- Enhanced Query Performance: The simple structure of dimensional data modeling allows for faster query performance, particularly when compared to relational data models.
- Increased Flexibility: Dimensional data modeling allows for more flexible data analysis, as users can quickly and easily explore relationships between data.
- Improved Data Quality: Dimensional data modeling can improve data quality by reducing redundancy and inconsistencies in the data.
- Easy to Understand: Dimensional data modeling uses simple, intuitive structures that are easy to understand, even for non-technical users.
Disadvantages of Dimensional Data Modeling
- Limited Complexity: Dimensional data modeling may not be suitable for very complex data relationships, as it relies on simple structures to organize data.
- Limited Integration: Dimensional data modeling may not integrate well with other data models, particularly those that rely on normalization techniques.
- Limited Scalability: Dimensional data modeling may not be as scalable as other data modeling techniques, particularly for very large datasets.
- Limited History Tracking: Dimensional data modeling may not be able to track changes to historical data, as it typically focuses on current data.
Similar Reads
Data Models in DBMS
A Data Model in Database Management System (DBMS) is the concept of tools that are developed to summarize the description of the database. Data Models provide us with a transparent picture of data which helps us in creating an actual database. It shows us from the design of the data to its proper im
8 min read
Data Mining Models
Prerequisite - Data MiningThe motive of data mining is to recognize valid, probable advantageous, and understandable connections and patterns in existing data. Database technology has become more developed where huge amounts of data require to be stored in a database, and the wealth of knowledge hid
3 min read
Difference Between ER Modeling and Dimensional Modeling
A logical view of data is provided by the high-level conceptual data model known as the Entity-Relationship (ER) model, which represents entities, characteristics, and relationships. It is necessary to create databases that are well-structured. Ralph Kimball invented dimensional modeling, which comb
5 min read
Model Planning for Data Analytics
In this article, we are going to discuss model planning for data analytics in which we will cover all procedural steps one by one. Model planning is phase 3 of lifecycle phases of data analytics, where team determines methods, techniques, and workflow it intends to follow for subsequent model buildi
3 min read
Relationships in ER model
Entity Relationship model (ER model) contains entities and relationships. ER model enables us to know how these entities are associated with each other. Entities interact with other entities through associations or relationships. Let us assume that Geeks is the name of a student, Placement 100 is th
2 min read
Building blocks of a Data Model
A data model is a structure of the data that contains all the required details of the data like the name of the data, size of the data, relationship with other data and constraints that are applied on the data. It is a communication tool. A data model is essential in order to store the database in a
2 min read
OLAP Guidelines (Codd's Rule)
On-line Analytical Processing (OLAP) is a category of software technology that enables analytics, managers and executives to gain insight into data through fast, consistent, interactive access in a wide variety of information that has been transformed from the raw data to reflect the real dimensiona
2 min read
Different Phases of Projected Clustering in Data Analytics
We know Projected clustering is a typical dimension reduction subspace clustering method which instead of initiating from single dimensional spaces, proceeds by identifying an initial approximation of the clusters in high dimensional attribute space. But to do this projected clustering algorithm goe
3 min read
Difference between Statistical Model and Machine Learning
In this article, we are going to see the difference between statistical model and machine learning Statistical Model:Â A mathematical process that attempts to describe the population from which a sample came, which allows us to make predictions of future samples from that population. Examples: Hypoth
6 min read
What is State Space Analysis ?
The State Space analysis applies to the non-linear and time-variant system. It helps in the analysis and design of linear, non-linear, multi-input, and multi-output systems. Earlier the transfer function applied to the linear time-invariant system but with the help of State Space analysis, it is pos
7 min read