Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
sivarajan21
Helper V
Helper V

How to track the RLS performance in embedded

Hi,

 

We have Power BI embedded. We have been updating our RLS to use DAX, as opposed to relying on bi-directional relationships etc in our model to increase perofrmace.

The performance while using bi-directional as below

sivarajan21_2-1700639954366.png

The RLS tables relationships for above low performance is:

sivarajan21_3-1700640058993.png

 

 

After implementing dax for RLS, We tested this in desktop through Perofrmance Analyser which has made a great difference as shown below:

sivarajan21_4-1700640119142.png

 

The modified RLS tables relationships for above performance is:

sivarajan21_1-1700639878763.png

 

The dax we used for above relationship is as below:

sivarajan21_5-1700640274494.png

 

However, when the report is published to service and accessed through embedded, performance is particularly poor and seems worse than before the improvements!

 

We read some articles from microsoft on below

Best practices for faster performance in Power BI embedded analytics - Power BI | Microsoft Learn

But we don't how to implement it, 'loaded event' and 'rendered event'. Also, I couldn't  find any practical illustration/demo for above article/RLS in embedded

 

Any thoughts on why this could be and are there any services that allow monitoring of embedded performance to try and diagnose why this could be?

 

Thanks in advance!

@Ahmedx @amitchandak @marcorusso @Greg_Deckler 

1 ACCEPTED SOLUTION

You should not rely only on Performance Analyzer results, because you are not considering whether the storage engine cache is used or not in the two cases. You should analyze the performance with DAX Studio impersonating the user and the role required. THe right approach is a big "it depends" and there are many things to consider. Potentially, the M2M approach could be way faster, but - it depends!

There is an entire section on Optimizing DAX Video Course - SQLBI that describes how to analyze and optimize security.

View solution in original post

8 REPLIES 8

This kind of analysis usually requires access to the live model (and dedicated quality time - not something we can do on a public forum). The VPAX file can be analyzed by tools such as www.daxoptimizer.com, but that service currently don't analyze the impact of RLS, so it would not be directly useful for that.

Hi @marcorusso 

 

Thanks for your quick response and your patience towards answering my questions!

Me and my team will enroll in your course and learn these things😊

I will close this query and accept your solution

Just to confirm,Is dax optimizer a free source ?

 

Thanks!

DAX Optimizer is a commercial product. It is now at a discount because it is in beta. However, you can save time and money for your model because the issues that DAX Optimizer would find are unimportant and unrelated to the performance issue you are experiencing.

Hi @marcorusso 

 

Thanks for the genuine and quick response!

Please let me know if you need anything from my side in future and am happy to help!😊

 

Thanks

The large materialization is likely to be responsible. A solution requires a deeper review of data model and requirements, I'm not able to quickly help here, sorry!

Hi @marcorusso ,

 

Many thanks for your quick response!

Also, thank you so much for giving me lead on optimizing dax video course! planning to enroll in course.

Below is my vpax file, I am not sure whether this will help or not to find the problems in my report.

PFA PR-419 - Data Coverage RLS Update_high performance.vpax

 

Thanks in advance!

@marcorusso @Ahmedx 

You should not rely only on Performance Analyzer results, because you are not considering whether the storage engine cache is used or not in the two cases. You should analyze the performance with DAX Studio impersonating the user and the role required. THe right approach is a big "it depends" and there are many things to consider. Potentially, the M2M approach could be way faster, but - it depends!

There is an entire section on Optimizing DAX Video Course - SQLBI that describes how to analyze and optimize security.

Hi @marcorusso ,

 

Thanks for your quick response!

I have run the Dax studio to find the what is causing the issue and found this server timings.

sivarajan21_0-1700648518147.png

 

But I am unable to figure out exactly where the problem is and what remedy should be taken.

please advise me on this?

 

Thanks in advance!

@marcorusso 

 

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.