Forum Discussion
Loading time
- 7 years ago
Hi Anonymous ,
If you use DirectQuery mode to connect data, your report performance depends largely on the performance of the underlying data source.
You can optimize your data model using following tips:
- Remove unused tables or columns, where possible.
- Avoid distinct counts on fields with high cardinality – that is, millions of distinct values.
- Take steps to avoid fields with unnecessary precision and high cardinality. For example, you could split highly unique datetime values into separate columns – for example, month, year, date, and so on. Or, where possible, use rounding on high-precision fields to lower cardinality – (for example, 13.29889 -> 13.3).
- Use integers instead of strings, where possible.
- Be wary of DAX functions, which need to test every row in a table – for example, RANKX – in the worst case, these functions can exponentially increase run-time and memory requirements given linear increases in table size.
- When connecting to data sources via DirectQuery, consider indexing columns that are commonly filtered or sliced again. Indexing greatly improves report responsiveness.
For more information on optimizing data sources for DirectQuery, see DirectQuery in SQL Server 2016 Analysis Services.
To minimize the impact of network latency, strive to keep data sources, gateways, and your Power BI cluster as close as possible. If network latency is an issue, try locating gateways and data sources closer to your Power BI cluster by placing them on virtual machines.
To further improve network latency, consider using Azure ExpressRoute, which is able of creating faster, more reliable network connections between your clients and Azure datacenters.
You can learn more via the link: https://docs.microsoft.com/en-us/power-bi/power-bi-reports-performance#optimize-your-model.
Best Regards,
Amy
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Dear Amy,
checked all of your tips and rebuild pages of our report. Some things were helping (such as reducing visuals on a page again), other we already worked on (no custom visuals, no hierarchical filters, ..)
I checked all with the help of the Power BI integrated Performance Analyzer. May be you or anybody else can now tell me, how can I improve the field "Other"? DAX and direct query figures are fine, but I have to wait 2 to 4 seconds for "other" (sometime even up to 7 sec).
Thank you in advance and best regards
Hi Anonymous ,
If you use DirectQuery mode to connect data, your report performance depends largely on the performance of the underlying data source.
You can optimize your data model using following tips:
- Remove unused tables or columns, where possible.
- Avoid distinct counts on fields with high cardinality – that is, millions of distinct values.
- Take steps to avoid fields with unnecessary precision and high cardinality. For example, you could split highly unique datetime values into separate columns – for example, month, year, date, and so on. Or, where possible, use rounding on high-precision fields to lower cardinality – (for example, 13.29889 -> 13.3).
- Use integers instead of strings, where possible.
- Be wary of DAX functions, which need to test every row in a table – for example, RANKX – in the worst case, these functions can exponentially increase run-time and memory requirements given linear increases in table size.
- When connecting to data sources via DirectQuery, consider indexing columns that are commonly filtered or sliced again. Indexing greatly improves report responsiveness.
For more information on optimizing data sources for DirectQuery, see DirectQuery in SQL Server 2016 Analysis Services.
To minimize the impact of network latency, strive to keep data sources, gateways, and your Power BI cluster as close as possible. If network latency is an issue, try locating gateways and data sources closer to your Power BI cluster by placing them on virtual machines.
To further improve network latency, consider using Azure ExpressRoute, which is able of creating faster, more reliable network connections between your clients and Azure datacenters.
You can learn more via the link: https://docs.microsoft.com/en-us/power-bi/power-bi-reports-performance#optimize-your-model.
Best Regards,
Amy
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.