Blogs

Understanding Semantic Models in Microsoft Fabric

, May 27, 2025285 Views

In the ever-evolving world of data analytics, Microsoft Fabric stands out as a powerhouse for handling complex datasets. At the heart of this platform lies the concept of Semantic Models, which act as the bridge between raw data and insightful analysis.

In this blog, we’ll dive into the strengths and weaknesses of these models, helping you make an informed decision based on your project’s needs. Whether you’re aiming for rapid reporting or intricate data modeling, there’s a model that fits your use case.

What Is a Semantic Model in Fabric?

In Microsoft Fabric, a Semantic Model acts as the blueprint for your data—defining its structure, logic, and metadata. It powers Power BI reports by managing relationships, supporting DAX measures, and enabling rich data visualizations.

Fabric gives you two options here:

  • Default Semantic Model – Automatically created with a Lakehouse or Warehouse; useful for quick reporting with minimal setup.
  • Custom Semantic Model – Manually created; gives full control for advanced modeling and customized reporting.

Understanding the Default Semantic Model:

The Default Semantic Model is automatically created when Lakehouse or Warehouse is created in Fabric, providing a fast, out-of-the-box solution for reporting. However, its limitations include restricted control over table relationships, calculations, and model customization, making it ideal for quick insights but not for complex or highly tailored data models.

As this model starts empty—no tables are included by default, to populate the tables from the underlying SQL Analytics Endpoint, Fabric provides two options:

  • Manage Default Semantic Model: Manually add tables/views
  • Automatically Update Semantic Model: Fabric automatically identifies missing tables and objects and adds them to the Semantic Model with a single click, ensuring effortless updates.

Once tables are added, use the Model Layout feature in the SQL Analytics endpoint to define relationships—enabling structured modeling like what you’d do in Power BI Desktop.

Reference Link:

Understanding the Sync Feature in Default Power BI Semantic Model:

The “Sync the default Power BI semantic model” option—available under the Default Power BI Semantic Model settings in the SQL analytics endpoint—controls whether new objects (tables, views) from your Lakehouse or Warehouse are automatically added to the model.

If the “Sync default Power BI semantic model” option is:

  • Enabled: New tables/views are automatically added to the Default Semantic Model.
  • Disabled: New objects won’t sync—you must manually add them.

Note:

  • Sync is not retroactive. Any tables/views created while sync was OFF won’t be backfilled, even if you enable sync later.
  • Schema Changes Automatically Reflect in the Default Semantic Model—regardless of this sync setting.

So be cautious: Deleting columns or tables used in Power BI reports from the semantic model or the underlying data source can cause the reports to crash or break.

Reference Link:

Limitations of Default Semantic Model:

The Default Semantic Model is great for quick insights but lacks key features for advanced BI needs. It doesn’t support custom DAX measures, calculated columns, advanced relationships, composite models, DirectQuery, field parameters, or calculation groups.

Understanding the Custom Semantic Model:

Unlike Default Semantic Model, the Custom Semantic Model is designed for those who need full control over their data models. You start by manually building the model in Power BI Service or Power BI Desktop. This means you can define relationships and create measures. Calculated tables and columns from the Direct Lake tables are not supported yet.

The Custom Semantic Model in Fabric is manually created for advanced, customized reporting. Access the SQL Analytics Endpoint, select “New Semantic Model“, choose the required tables, name the model, and confirm to build a fully controlled data model. Then, click Open Data Model and switch to Editing mode to perform advanced tasks like adding calculated tables, DAX measures, calculation groups, and defining relationships between tables.

Reference Link:

Key Differences in Semantic Models:

Feature Default Semantic Model Custom Semantic Model
Creation Auto generated with Lakehouse or Warehouse Manually created via SQL Analytics Endpoint’s “New Semantic Model” or Power BI Desktop
Modeling Flexibility Minimal — read-only; no custom DAX, calculated columns, or complex logic Full control — supports relationships, DAX, KPIs, hierarchies, calculated columns from newly created tables, not on direct lake tables
Sync Behavior Objects controlled by “Sync the default Power BI semantic model” toggle.
No control on schema changes in the semantic model and the report due to auto sync up.
Power BI report/visual may crash due to this sync behavior.
Objects controlled manually by the developer.
No control on schema changes in the lakehouse/warehouse due to auto sync up but not to Custom Semantic Model.
Power BI schedule/manual refresh may crash due to this sync behavior.
Developers must manually delete and re-add the updated table with updated schema.
Composite Model Support Not supported — all tables use Direct Lake mode Fully supported, including mixed storage modes
Primary Use Cases Quick prototyping, simple dashboards, ad-hoc exploration Enterprise BI, governed reporting, complex analytics

Leave a comment

Your email address will not be published. Required fields are marked *