Press "Enter" to skip to content

Category: Microsoft Fabric

Thoughts on Fabric User Data Functions

Jon Lunn shares some thoughts:

Fabric User Data Functions are a bit of a strange hybrid. They can be used like Azure Functions, to call some code outside and act like a serverless compute function, but also can extend notebooks as a source of reusable data logic. I’ve been using them since preview, and now they support Azure Key Vault (AKV) and Fabric Variable Libraries, I think they are ready (mostly) for productionable use.

I think the part that annoys me the most about them is that they’re called “User Data Functions” instead of “User-Defined Functions” and yet the acronym is the same.

Leave a Comment

Workspace Monitoring in Power BI

Chris Webb monitors Power BI:

This week, in the announcement about support for Fabric Pipelines in Workspace Monitoring, I noticed that it came with an Operations Agent that actively monitors and analyses Pipeline activity. And that got me thinking, since Workspace Monitoring also contains Power BI activity data, why not create an Operations Agent to actively monitor Power BI too?

Read on for a fairly simple demonstration of how it works.

Leave a Comment

Performance Tuning with Microsoft Fabric Warehouse Query Insights

Koen Verbeeck troubleshoots query performance:

We are in the process of building a data warehouse in Microsoft Fabric. Since we have good knowledge of T-SQL, we are using Fabric Warehouse as the database engine. We are hitting some performance issues in our ETL and we would like to investigate further, but traditional SQL Server DMVs don’t give the results we are hoping for. How can we troubleshoot performance in the Fabric Warehouse?

Click through to see how.

Leave a Comment

Replacing Item IDs and Connection Strings with Variable Libraries

Gilbert Quevauvilliers makes use of variable libraries in Microsoft Fabric:

In this blog post I’m going to show you how you can use variable libraries with connection strings as well as items.

This approach allows you to manage environment-specific configuration when deploying Fabric items across development, test, and production workspaces

If you’re looking to move your fabric capacities across workspaces or regions, you can do this quickly and easily without having to re-Plumb a lot of the work.

Click through for a working example.

Leave a Comment

Direct Lake Mode Benefits in Power BI

Chris Webb lays out the pros:

This is a blog post I’ve been meaning to write for a long time. Since Fabric launched there has been a lot of focus on Direct Lake mode in Power BI and a lot of people used it because it was the cool new thing. Arguably, we at Microsoft have been guilty of telling people to use it because it was the cool new thing without properly explaining what the benefits are of using it. Direct Lake doesn’t completely replace other storage modes: in a recent post I talked about when Import/DirectQuery composite models are the best choice; Marco wrote a good article on Direct Lake vs Import mode which makes the case for the continuing relevance of Import mode for many scenarios. So what are the main benefits of using Direct Lake mode? 

Click through for Chris’s answer.

Leave a Comment

Performing a Lakehouse Table Health Check

Jon Lunn looks at a stored procedure:

Microsoft have rolled out a new ‘sys’ stored procedure called ‘sys.sp_get_table_health_metrics’ for checking the health of your tables in your Lakehouse. And it outputs a lot of metrics looking at the state of your table and anomaly detection in them.

What does it check for?

Click through for that answer, as well as some of the things you should watch for in the procedure results, and what you can do if it does catch something.

Leave a Comment

Merging Data into a Fabric Lakehouse via Python Notebook

GIlbert Quevauvilliers uses a pure Python notebook:

In this blog post I am going to show you how to use a Fabric Python runtime notebook (This is the notebook which only uses Pure Python functions and consumes significantly lower Capacity Units (CUs)).

The pattern is how to get new data and merge it into an existing Lakehouse table. This ensures that if the notebook is run again data will not be duplicated.

Why I am sharing this is I have found that there is not a lot of useful information about how to use a Python notebook to write to a lakehouse table easily. And then also how to use a Merge statement making it easier to insert or update your lakehouse tables. This simplifies the ingestion process, runs faster and consumes the least amount of CUs

Gilbert doesn’t mention it in the blog post but the notebook does use DuckDB to query the data using SQL.

Leave a Comment

A Primer on Microsoft Fabric for SQL Server Professionals

Kevin Chant gives the low-down on Microsoft Fabric:

This post covers how you can spread your SQL Server wings with Microsoft Fabric in 2026. As part of a long-running series of posts about spreading your SQL Server wings with the Microsoft Intelligent Data Platform.

Just after Microsoft Fabric was publicly announced during Microsoft Build 2023, I published a post that covered spreading your SQL Server wings with Microsoft Fabric.

A lot has changed since then. Including Microsoft Fabric becoming generally available and the introduction of more workloads. Since Data Days is currently taking place, I decided to publish an updated version.

There’s a lot that has changed in the product, meaning that if your experience with it was how it looked in early 2024, it’s a different world now.

Leave a Comment

A Primer on OneLake Security

James Serra takes us through the different security models in Microsoft Fabric:

The idea behind Fabric OneLake Security (which GA’d on April 2026) is to centralize data access controls at the data layer, rather than configuring security separately for every Fabric experience. You define security once, close to the data in OneLake, using roles that can control access at the folder, table/object, row, and column levels through object-level security (also called Table-level and folder-level security), row-level security (RLS), and column-level security (CLS). Those rules are then enforced by supported Fabric engines and access paths, such as Lakehouse, Spark notebooks, the SQL analytics endpoint in user identity mode, and Power BI Direct Lake semantic models. Downstream experiences that go through those governed paths, such as Power BI reports or Excel connected through the semantic model, inherit the same secured view of the data.

However, OneLake security is not the native security model for every data location in Fabric.

Read on to see which components use what security models, as well as some hints as to the vision for Microsoft Fabric’s ultimate security model.

Leave a Comment

Ways Data Apps Improve Microsoft Fabric Semantic Models

Ruben Van de Voorde digs into data apps:

Fabric data apps are the most interesting thing to happen to data visualization in Power BI and Microsoft Fabric, ever. They provide limitless potential for how to visualize and interact with your data. However, they also indirectly provide a major benefit to your semantic models by allowing them to be simpler to build, use, and maintain.

In this article, we argue that data apps provide a reporting layer that is separate from the semantic layer, something that wasn’t true in Power BI due to tight coupling between reports and semantic models.

Click through to see where they fit vis-a-vis Power BI reports and semantic models.

Leave a Comment