Open Forem

Cover image for Schemas and Data Modelling in Power BI
Kelvin Vosky
Kelvin Vosky

Posted on

Schemas and Data Modelling in Power BI

A Beginner-Friendly Guide to Building Fast and Accurate Reports

Introduction

When working with Power BI, many beginners focus heavily on visuals, charts, and dashboards. While visuals are important, the real foundation of a good Power BI report is the data model behind it.

If your data model is poorly designed:

Reports become slow

Numbers don’t add up correctly

Filters behave unexpectedly

Dashboards are hard to maintain

This is where schemas and data modelling come in. Understanding these concepts early will save you a lot of frustration and help you build reliable, high-performance reports.

What Is a Schema?

Schema
A schema is the overall structure or blueprint of how data is organized in a database or data model.

Think of a schema as a map that shows:

What tables exist

What columns (fields) each table contains

How the tables are connected to each other

In Power BI, the schema is what you see in the Model view, where tables are connected by relationship lines.

In simple terms:

A schema explains how your data is arranged and how different pieces of data relate to one another.

Data Modelling

Data Modelling

Data modelling is the process of designing that structure in a way that makes data easy to analyze, accurate to report on, and fast to query.

Data modelling involves decisions like:

_Which tables should exist

Which tables store numbers vs descriptions

How tables should be connected

Which relationships should be active

How filters should flow across the model_

You can think of data modelling as:

Designing the “engine room” of your Power BI report.

Good visuals sit on top of a good model. Poor visuals often hide a bad model
Key Building Blocks of Data Models

Before looking at schema types, it’s important to understand two fundamental table types used in BI.

Fact Tables

A fact table stores measurable, numerical, transactional data.

Characteristics:

Contains metrics like sales, quantity, revenue, cost

Usually very large

Records events or transactions

Contains foreign keys that link to dimensions

Example: Sales Fact Table

OrderID

CustomerID

ProductID

DateID

Quantity

Revenue

Fact tables answer questions like:

How much?

How many?

How often?

Dimension Tables

A dimension table stores descriptive information that helps explain or categorize facts.

Characteristics:

Smaller than fact tables

Used for filtering, grouping, and slicing data

Contains names, categories, dates, and attributes

Examples:

Customer Dimension → CustomerID, Name, Age, Region

Product Dimension → ProductID, Product Name, Category, Brand

Date Dimension → DateID, Year, Quarter, Month, Day

Dimension tables answer questions like:

Who?

What?

Where?

When?

Relationships in Power BI

Relationships define how tables are connected.

The most common relationship in Power BI is:

One-to-Many (1:*)

Example:

One customer → many sales

One product → many sales

One date → many transactions

In Power BI:

Relationships are created in Model view

Filters usually flow from dimension tables to fact tables

Correct relationships are critical for accurate calculations

Types of Schemas in Business Intelligence

The most common schemas used in Power BI are:

Star Schema

Snowflake Schema

Galaxy Schema (Fact Constellation)
1. Star Schema

Illustration showing star and snowflake schema

The Star Schema is the most recommended and widely used schema in Power BI.

Structure

A central fact table in the middle

Dimension tables directly connected to the fact table

The layout looks like a star

The star Schema
Components of a Star Schema
Fact Table

Contains numeric measures

Contains foreign keys to dimensions

Large in size

Example: Sales Fact

OrderID

CustomerID

ProductID

DateID

Quantity

Revenue

Dimension Tables

Contain descriptive attributes

Smaller in size

Used in slicers and filters

Examples:

Customer → Name, Age, Region

Product → Category, Brand

Date → Year, Month, Day

Why Star Schema Is Recommended

Star schema is considered best practice in Power BI because:

High Performance
Fewer joins mean faster queries and better dashboard responsiveness.

Simplicity
Easy for beginners, analysts, and business users to understand.

Accurate Calculations
DAX measures behave more predictably with clean one-to-many relationships.

Better Filtering
Filters flow cleanly from dimensions to facts.

Microsoft Recommendation
Microsoft explicitly recommends star schemas for Power BI semantic models.

2. Snowflake Schema

Snowflake Schema

A Snowflake Schema is a more complex version of a star schema.

Instead of having one large dimension table, dimensions are split into multiple related tables.

Structure

Fact table remains central

Dimension tables are normalized

Dimensions branch out into sub-dimensions

Example:

Customer → City → Region → Country

Product → Category → Department

Example Snowflake Design

Fact Table: Sales

OrderID

CustomerID

ProductID

DateID

Revenue

Dimension Tables:

Customer (CustomerID, Name, CityID)

City (CityID, CityName, RegionID)

Region (RegionID, RegionName, CountryID)

Country (CountryID, CountryName)
Advantages of Snowflake Schema

Reduces data redundancy

Saves storage space

Maintains better data consistency

Useful for very large datasets with complex hierarchies

Disadvantages in Power BI

More complex to design and maintain

Slower performance due to many joins

Harder for beginners and business users

More complicated DAX calculations

Because of this, snowflake schemas are generally not recommended for Power BI unless absolutely necessary.

Why Good Data Modelling Is Critical in Power BI

Data modelling directly affects everything in Power BI.

1. Performance

Well-designed models:

Reduce the number of joins

Improve query speed

Use memory efficiently

Keep dashboards responsive

2. Accurate Reporting

Clean relationships ensure:

Correct totals and aggregations

Filters work as expected

No duplicated or missing values

3. Scalability

Good models are:

Easier to extend

Easier to debug

Easier to reuse across reports

4. User Experience

Clear schemas:

Make reports easier to understand

Reduce confusion for stakeholders

Improve self-service analytics

5. Alignment with Best Practices

Power BI works best when you use:

Star schemas

One-to-many relationships

Dedicated date tables

Clean, well-named fields

Final Summary

Schemas **and **data modelling are the foundation of effective Power BI reporting.

A schema defines how data is structured and connected

Fact tables store numbers and metrics

Dimension tables store descriptive information

Star schemas are simple, fast, and recommended

Snowflake schemas save space but add complexity

In short:

Good data modelling turns raw data into fast, accurate, and trusted insights.
Thanks for reading , comment below which schema you prefer and why

Top comments (0)