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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
bdpr_95
Helper III
Helper III

Optimizing Power BI: Monthly Report Refresh with Daily RLS Updates

Hi,

I'm migrating reports from a data visualization tool to Power BI. To give you some context: I have more than 10 reports that are updated monthly. These models have RLS implemented, but the RLS needs to be updated daily. What would be your suggestion to achieve the best possible solution (performance, cost, etc.)? Should I use notebooks? If so, how can I set it up so that the entire semantic model is refreshed monthly, and only the user access table is refreshed daily? Is this possible?

Any help is welcome.

1 ACCEPTED SOLUTION
ibarrau
Super User
Super User

Hi. Well, it's tricky. For the single table refresh you can do it with Data Pipelines or by code in a notebook:

- Using pipelines: https://learn.microsoft.com/en-us/fabric/data-factory/semantic-model-refresh-activity

- Using enhaced api (only semantic models with capacity): https://fabric.guru/refreshing-individual-tables-and-partitions-with-semantic-link

 

Regarding effort for modifying manually the RLS flow it might be different depending your deploy:

- Static RLS. You can assign rules to security groups. Then you could use the UI or a PowerShell script to modify the security groups assigned to the roles created at the model.

- Dynamic RLS: the best approach to reduce effort would be trying to use a single tool for the two places you should modify. When it's dynamic you probably have a table assigning people to logic besides the security group. You could check if python, powershell or any other would let you modify both things in a single script.

Just in case let me share a dynamic rls example: https://blog.ladataweb.com.ar/post/652895563673649152/powerbi-seguridad-de-filas-rls-con-regla

Once you have the script, it could run in Azure Functions or Runbooks at Azure. If you already have a Fabric capacity, then it could run in a notebook or user data function to take adventage of the license.

I hope that helps


If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Happy to help!

LaDataWeb Blog

View solution in original post

6 REPLIES 6
v-echaithra
Community Support
Community Support

Hi @bdpr_95 ,

May I ask if you have resolved this issue? Please let us know if you have any further issues, we are happy to help.

Thank you.

v-echaithra
Community Support
Community Support

Hi @bdpr_95 ,

We’d like to follow up regarding the recent concern. Kindly confirm whether the issue has been resolved, or if further assistance is still required. We are available to support you and are committed to helping you reach a resolution.

Best Regards,
Chaithra E.

v-echaithra
Community Support
Community Support

Hi @bdpr_95 ,

Thank you @ibarrau@FBergamaschi  for your input.
I hope the information provided is helpful.I wanted to check whether you were able to resolve the issue with the provided solutions.Please let us know if you need any further assistance.

Thank you.

ibarrau
Super User
Super User

Hi. Well, it's tricky. For the single table refresh you can do it with Data Pipelines or by code in a notebook:

- Using pipelines: https://learn.microsoft.com/en-us/fabric/data-factory/semantic-model-refresh-activity

- Using enhaced api (only semantic models with capacity): https://fabric.guru/refreshing-individual-tables-and-partitions-with-semantic-link

 

Regarding effort for modifying manually the RLS flow it might be different depending your deploy:

- Static RLS. You can assign rules to security groups. Then you could use the UI or a PowerShell script to modify the security groups assigned to the roles created at the model.

- Dynamic RLS: the best approach to reduce effort would be trying to use a single tool for the two places you should modify. When it's dynamic you probably have a table assigning people to logic besides the security group. You could check if python, powershell or any other would let you modify both things in a single script.

Just in case let me share a dynamic rls example: https://blog.ladataweb.com.ar/post/652895563673649152/powerbi-seguridad-de-filas-rls-con-regla

Once you have the script, it could run in Azure Functions or Runbooks at Azure. If you already have a Fabric capacity, then it could run in a notebook or user data function to take adventage of the license.

I hope that helps


If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Happy to help!

LaDataWeb Blog

FBergamaschi
Solution Sage
Solution Sage

Unless you are ready for pretty complex scenarios, the standard refresh involves all tables so you need a daily refresh

 

If this helped, please consider giving kudos and mark as a solution

 

@mein replies or I'll lose your thread

Want to check your DAX skills? Answer my biweekly DAX challenges on the kubisco Linkedin page

Consider voting this Power BI idea

Francesco Bergamaschi

MBA, M.Eng, M.Econ, Professor of BI

@FBergamaschi you are wrong.

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors