DEV Community

Cover image for Schemas & Data Modelling in Power BI
Judy Mokaya
Judy Mokaya

Posted on

Schemas & Data Modelling in Power BI

Overview

Great Power BI reports start long before visuals, they start with good data modelling. A well-designed model improves performance, simplifies DAX, and ensures accurate reporting.

This article briefly covers:

  • Fact and dimension tables
  • Star and snowflake schemas
  • Relationships
  • Why data modelling matters in Power BI

Fact and Dimension Tables

Fact Tables

Fact tables store measurable data such as:

  • Sales amount
  • Quantity
  • Revenue

They usually contain many rows and grow over time.

Dimension Tables

Dimension tables store descriptive data that give context to facts:

  • Customers
  • Products
  • Dates

Dimensions are used for filtering, grouping, and slicing data.

Example: Fact vs Dimension Tables in Power BI Model View

Power BI fact and dimension tables

  • Power BI Model View showing one fact table connected to multiple dimensions.

Star Schema

The star schema is the most recommended modelling approach in Power BI.

Structure

  • One central fact table
  • Multiple dimension tables connected directly to the fact table

Why Star Schema Works Best

  • Simple and intuitive
  • Fewer joins → better performance
  • Easier and cleaner DAX

Star Schema Example

Star schema in Power BI

Power BI model with a clear star layout (fact table in the center).

Snowflake Schema

The snowflake schema is a more normalized version of the star schema.

Structure

  • Dimension tables are split into multiple related tables
  • Some dimensions connect indirectly to the fact table

Power BI Drawbacks

  • More complex relationships
  • Slower performance
  • Harder to understand and maintain

For Power BI, denormalized dimensions are usually better.

Snowflake Schema Example

Snowflake schema diagram

Model view showing dimensions branching into other dimensions.

Relationships in Power BI

Relationships control how filters flow between tables.

Best Practices

  • Use one-to-many relationships
  • Prefer single-direction filtering
  • Avoid many-to-many unless necessary
  • Ensure dimension keys are unique

Bad relationships can cause incorrect totals and confusing visuals.

Relationships View Example

Power BI relationships view

Power BI relationship settings dialog or Model View relationship lines.

Why Good Data Modelling Matters

Good data modelling:

  • Improves report performance
  • Ensures accurate aggregations
  • Simplifies DAX formulas
  • Makes reports easier to scale and maintain

Bad models don’t just slow reports, they can produce misleading insights.

Final Takeaway

Data modelling is the foundation of Power BI reporting. Understanding fact and dimension tables, using a star schema, and designing clean relationships leads to faster, more reliable, and easier-to-maintain reports.

Strong data models lead to trustworthy insights.

Top comments (1)

Collapse
 
wk-warui profile image
@waruikelvin

Nice read, Judy. Your explanations are beginner-friendly and easy to understand and follow. Thank you!