Skip to main content
HomeBlogPower BI

What are Power BI Semantic Models?

Learn about semantic models in Power BI, their components, modes, and best practices to create and manage them.
Dec 2023  · 7 min read

As a long-standing leader in the business intelligence space, Power BI's constant innovation paves the way for other BI tools. This is further demonstrated by Microsoft’s announcement of Fabric, which they view as "the first truly unified analytics solution based on one copy of data," of which Power BI is a single component.

As such, the term 'dataset' in Power BI no longer captures the full scope of its functionality. A dataset does not just contain data--it contains transformations, calculations, and relationships as part of a comprehensive and versatile data model (a semantic model, as it were).

You can use our Power BI cheat sheet to get started with Power BI quickly–from creating your first visualization to Power Query and DAX calculations.

Power BI Cheat Sheet by Datacamp

In this blog post, we will define semantic models, including what makes up a semantic model and the different modes in a semantic model. After that, we will review how to create and manage semantic models and give you some best practices you can follow when creating your own semantic models.

What are Power BI Semantic Models?

A semantic model in Power BI can be considered a logical layer containing the transformations, calculations, and relationships between data sources needed to create reports and dashboards. A semantic model serves as the single source of truth for reports across an organization.

Power BI Semantic Model From Data Source to Report

Image by author

While a semantic model can be built using Power BI Desktop (in a .pbix file), it does not need to contain any visuals. Think of a semantic model as the last stop in the data pipeline before reports and dashboards are built. Thereafter, once you share a semantic model with other members of the organization, they can build any number of reports and dashboards from just that one semantic model.

Semantic models hide the complex technical details behind reports so that both technical and non-technical users can concentrate on analyzing the data and answering business questions. Sharing and reusability are two stand-out features of semantic models.

What Makes Up a Semantic Model?

Semantic models consist of several different elements:

  • Data connections to one or more data sources, either imported, through DirectQuery, or as part of a composite model.
  • Transformations that clean and prepare the data for reporting.
  • Defined calculations and metrics based on business rules to ensure consistent reports built from the semantic model. This ensures clarity and avoids discrepancies between analyses and reports.
  • Defined relationships between tables allow users to focus on designing reports without knowing the underlying database structures and data models beforehand.

Semantic Model Modes

Choosing the right mode when connecting to your data in Power BI is an important first step in creating a semantic model since each has benefits and drawbacks that you must be aware of.

There are three modes of semantic models in Power BI:

  • Import mode
  • DirectQuery mode
  • Composite mode

Import mode

This fully loads the data into the Power BI (.pbix) file. Whenever the Power BI report refreshes, the Vertipaq storage engine compresses, optimizes, and stores the data to disk. This leads to fast performance and flexible design options for report creators. In addition, import mode allows semantic model creators to use the full set of the Power Query M language functions to transform and prepare data as well as DAX functions to create calculations and measures.

DirectQuery mode

This mode only stores metadata about the model structure rather than the data itself. When the model is queried (such as by rendering a visual), the data is retrieved from the underlying data source. This is especially useful with large volumes of data or when there is a business requirement for near real-time data in a report.

Composite mode

Composite mode is a combination of import and DirectQuery mode. This mode is useful when the power and performance of import mode are needed, along with the ability to view real-time data. A table can be set to Dual storage mode, allowing the Power BI service to pick a more efficient mode depending on the nature of the query.

5 Steps to Creating Power BI Semantic Models

Creating a semantic model involves the same steps you may already be following in the initial stages of developing reports using Power BI desktop. If you’re an aspiring data analyst, you can learn the Power BI Fundamentals with our skill track, where you’ll learn about data visualization, DAX, and how to transform your data.

Naturally, the exact steps you would follow when creating a semantic model depend on your business needs and goal for the model. However, on a high level, these five steps are commonly encountered when creating a semantic model:

Five Steps to Creating Semantic Models

Image by author

  1. Import or connect to the required data sources using import mode, DirectQuery, or composite models.
  2. Clean and transform the data to make it useful for users. This involves removing duplicates, addressing missing data, cleaning up text-based data columns, etc. The exact transformation steps depend on your data's unique requirements.
  3. Define relationships between your data tables using good data modeling principles like the star schema. We have a course that will teach you the foundations of data modeling in Power BI.
  4. Create measures and calculations based on your unique business requirements.
  5. Once you are happy with your semantic model, publish it to the Power BI service.

Leveraging Semantic Models for Effective Reporting

Once you have created and published your semantic model to the Power BI service, you can create a live connection to the semantic model from within another Power BI report. In fact, you can create multiple reports from a single published semantic model, thereby ensuring consistency and reliability across all reports.

Previously, it was common to find multiple Power BI reports based on the same dataset, each with separate data models. This presented a challenge since there could be large differences between the reports, and it could be quite difficult and time-consuming to figure out what was causing the difference and which report needed to be changed. Creating a single semantic model that is shared across several Power BI reports completely solves this problem.

If you want to level up your Power BI data visualization skills and learn how to create effective reports in Power BI, we have a course to help you do that.

Managing Semantic Models

Semantic models can be easily shared across workspaces, democratizing data and fostering a strong data culture. However, this also requires effective management of those semantic models with proper controls and policies that maintain the data's integrity, security, and quality.

Ownership and Permissions

Managing access control and permissions for semantic models in Power BI can be done by admins, workspace members (depending on their role), and semantic model owners (the owner is the one who created the semantic model).

Semantic model permissions can be set and managed in two ways:

  • First, through direct access control to semantic models for individual people or entire security groups.
  • Second, by managing how semantic models and their reports are shared with other users not in the workspace.

Once you publish a semantic model to the Power BI service, you (as the semantic model owner) and admins can set one of four levels of permission for the semantic model:

  • Read: Allows users to access reports that use data from the semantic model and view model settings.
  • Build: Enables users to build new reports and dashboards from the model.
  • Reshare: Enables users to give other people access to the semantic model.
  • Write: Allows users to republish and make some changes to the model, except for certain settings like adding or changing data source credentials, for example.
  • Owner: While not strictly a permission, the creators of a semantic model become the owners in the Power BI service and have all the permissions above.

Security Considerations

Power BI administrators can also restrict how data is accessed, shared, and modified within their Power BI tenant. They can limit semantic model reuse either completely or partially based on security groups, impacting various functionalities like copying reports across workspaces, editing reports based on shared semantic models, and the visibility of semantic models in the Power BI service or Desktop.

Semantic model owners also control who can access and use the data in their semantic models. They can make semantic models discoverable by certifying or promoting them, which helps users and report creators identify which semantic models are designated as 'official' and considered high quality in the organization.

Role-level security (RLS) is enforced for semantic models and all reports built from them. RLS can affect users' ability to read the data from a semantic model if they have build or read permission unless the specific RLS role allows it.

Best Practices and Considerations

Creating the minimum number of semantic models needed and using them as the source for Power BI reports in an organization is the accepted best practice.

Over and above that, it is recommended for semantic models to be:

  • Comprehensive: semantic models should contain all the elements required to answer relevant business questions. These elements should also accurately and logically reflect business systems and processes.
  • Optimized and performant: semantic models should be optimized so that their refreshes, DAX calculations, and visual loads are fast, even when there is an increase in data volume.
  • Secure: semantic models should contain the required security elements that prevent unauthorized access to the data (such as row-level security).
  • Flexible: semantic models should be adaptable to changes in business requirements.

Conclusion

By renaming datasets to semantic models, Power BI has created a shift in the way we need to think about business intelligence. Rather than viewing data as static components of reports and dashboards, we can view them as part of a larger semantic layer that can be easily shared and reused.

By following the best practices outlined in this blog post, you can create effective and efficient semantic models that serve as a single source of truth for your organization's reporting needs. By leveraging the power of semantic models, you can empower both technical and non-technical users to analyze data and answer business questions, ultimately driving better decision-making across your organization.

If you’re interested in a career as a Data Analyst in Power BI, our career track will take you through every aspect of Power BI and prepare you for the Microsoft PL-300 certification.

If you’ve already learned the basics of Power BI, explore our list of 8 Power BI projects that you can do to apply your skills and build your portfolio.


Photo of Joleen Bothma
Author
Joleen Bothma
Topics

Learn Power BI Today!

Course

Introduction to Power BI

3 hr
320K
Master the Power BI basics and learn to use the data visualization software to build impactful reports.
See DetailsRight Arrow
Start Course
See MoreRight Arrow
Related

An 8-Step Guide to Becoming a Power BI Developer in 2024

Become a Power BI developer in 2024 with this complete roadmap.
Joleen Bothma's photo

Joleen Bothma

12 min

Power BI Certification: A Comprehensive Guide to Choosing The Right Path

Unlock your potential with our guide to Power BI certification: preparation tips, DataCamp resources, and career benefits.
Matt Crabtree's photo

Matt Crabtree

10 min

Data Storytelling and Visualization with Lea Pica from Present Beyond Measure

Richie and Lea cover the full picture of data presentation, how to understand your audience, leverage hollywood storytelling and much more.
Richie Cotton's photo

Richie Cotton

71 min

Mastering Predictive Analytics with Power BI: A Comprehensive Guide for Data Practitioners

Learn how to use Power BI for predictive analytics and create your first model in Power BI.
Joleen Bothma's photo

Joleen Bothma

12 min

How to Use the SUMX Power BI Functions

Explore the SUMX function in Power BI, its syntax, how it works, and best practices to keep in mind.
Joleen Bothma's photo

Joleen Bothma

8 min

Mastering SWITCH in DAX for Power BI: A Comprehensive Guide

Explore the Power BI SWITCH function, what it is, how to use it, and some common pitfalls and best practices.
Joleen Bothma's photo

Joleen Bothma

10 min

See MoreSee More