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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
viniciuscini
New Member

Improve query performance of direct query with Databricks

I’m building a dashboard in Power BI’s Pro Workspace, connecting data via Direct Query from Databricks (around 60 million rows from 15 combined tables), using a SQL Serverless (small size and 4 clusters).

The problem is that the dashboard is taking too long to load.

Considering that I can’t change my workspace to Premium, work with import mode, or use aggregation tables, is there anything else I can do besides what I’ve already done (listed below)?

  • Model tables in a “Star schema” in Power BI;
  • Materialize all tables in Databricks, avoiding as much as possible calculations and joins inside Power BI;
  • Check the “Referential Integrity” box when joining tables in Power BI;
  • Avoid using bi-directional filters;
  • Avoid using calculated columns or any field with “line-to-line interaction”;
  • Avoid nesting one calculation inside another;
  • Set up dimension tables in Dual Storage Mode;
  • Add an “Apply” button to apply all changes at once.
  • Increase the “Maximum connections per data source” in Power BI's configuration;
  • Increase the “Maximum number of simultaneous evaluations” in Power BI's configuration;
  • Increase the “Maximum memory used per simultaneous evaluation” in Power BI's configuration;
  • Uncheck “Auto date/time” in Power BI's configuration;
  • Uncheck “Allow data preview to download in the background” in Power BI's configuration;
  • Uncheck “Enable parallel loading of tables” in Power BI's configuration;
  • Uncheck “Turn on Q&A to ask natural language questions about your data” in Power BI's configuration;
  • Uncheck “Cross highlighting/filtering by default” in Power BI's configuration;

P.S.: I also tried to scale up the SQL Serverless (both memory and the number of nodes), but despite the dashboard taking 3-4 minutes to load, only 20%-30% of the compute power is being used. So, it does not seem to be a matter of compute power.

Due to that, I suspect that connection latency might have something to do with the slow performance.

2 ACCEPTED SOLUTIONS
amitchandak
Super User
Super User

@viniciuscini , Seem like you have tried all.

Ensure good partitioning and clustering of your data for your access patterns. Consider Z-ordering and clustering Optimizations with Delta Lake.

 

Also, consider Microsoft Fabric. It gives similar data with Direct Lake, where you do need a copy.

 

You can start a trial.  If your DataBricks table is in Delta format, you can just create shortcuts create model, and check the same in Fabric

Starting Your Free Trial- https://youtu.be/8kIMHmkQ9m4

Shortcuts- https://youtu.be/KIbt9GzAdWk

 

Join us as experts from around the world come together to shape the future of data and AI!
At the Microsoft Analytics Community Conference, global leaders and influential voices are stepping up to share their knowledge and help you master the latest in Microsoft Fabric, Copilot, and Purview.
️ November 12th-14th, 2024
 Online Event
Register Here

View solution in original post

v-rzhou-msft
Community Support
Community Support

Hi @viniciuscini ,

 

I think you can try Fabric as amitchandak mentioned.

You may also refer to below offical blogs to optmize Power BI Performance.

For reference:

Optimization guide for Power BI - Power BI | Microsoft Learn

DirectQuery model guidance in Power BI Desktop - Power BI | Microsoft Learn

DirectQuery optimization scenarios with the Optimize ribbon in Power BI Desktop - Power BI | Microso...

 

Best Regards,
Rico Zhou

 

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

View solution in original post

2 REPLIES 2
v-rzhou-msft
Community Support
Community Support

Hi @viniciuscini ,

 

I think you can try Fabric as amitchandak mentioned.

You may also refer to below offical blogs to optmize Power BI Performance.

For reference:

Optimization guide for Power BI - Power BI | Microsoft Learn

DirectQuery model guidance in Power BI Desktop - Power BI | Microsoft Learn

DirectQuery optimization scenarios with the Optimize ribbon in Power BI Desktop - Power BI | Microso...

 

Best Regards,
Rico Zhou

 

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

amitchandak
Super User
Super User

@viniciuscini , Seem like you have tried all.

Ensure good partitioning and clustering of your data for your access patterns. Consider Z-ordering and clustering Optimizations with Delta Lake.

 

Also, consider Microsoft Fabric. It gives similar data with Direct Lake, where you do need a copy.

 

You can start a trial.  If your DataBricks table is in Delta format, you can just create shortcuts create model, and check the same in Fabric

Starting Your Free Trial- https://youtu.be/8kIMHmkQ9m4

Shortcuts- https://youtu.be/KIbt9GzAdWk

 

Join us as experts from around the world come together to shape the future of data and AI!
At the Microsoft Analytics Community Conference, global leaders and influential voices are stepping up to share their knowledge and help you master the latest in Microsoft Fabric, Copilot, and Purview.
️ November 12th-14th, 2024
 Online Event
Register Here

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.