优化多行卡- 插件

本文介绍如何通过获取包含较少图表的可视化视觉对象,优化由于具有大量卡片图的慢速 Power BI 报表。

在 Power BI 报表中,每个可视化视觉对象都必须完成许多计算才能呈现结果。显示数据的可视化视觉对象必须生成一个或多个 DAX 查询,执行这些查询会增加等待时间,特别是当多个用户同时访问报表时还会增加服务器的工作量。为了提高报告的性能,最好的方式是减少在报告中可视化视觉对象的数量。

当用户位于报告的单个页面上时,Power BI 仅计算报表活动页面的可视化视觉对象。当用户将切换到其他页面时,其他页面中的视觉效果数量会对用户体验产生影响。

了每一张卡片视觉效果,代表着不同的销售度量值。该报告包含 22 张卡片图,每个图由不同的 DAX 计算。

v2-153ec648085e9a7896dff120c4eab31f

在功能非常强大的 Power BI 上执行的页面渲染时间为 1.5 秒。通过性能分析器窗格,可以看到确切的计算时间。首先,启用「性能分析器」窗格(①),单击「开始记录」(②),单击「刷新视觉对象」(③),按「总时间」排序(降序排列)(④)

v2-fe4f875a17e349365ccdfc51677dd05b

 

通过再次单击刷新视觉效果,我们可以看到不同的排序顺序。在此示例中,在「性能分析器」窗格提供的列表中,展开 Accessories,排列最后的「其他」视觉对象就能看到页面中最慢的视觉效果,可以看到大部分时间都用在「其他」项上,

v2-e8d4fd191d8bc56253eea11012557847

 

你也许会好奇「其他」是什么。其实「其他」意味着该视觉对象必须等待其他任务完成才能执行 DAX 查询。由于页包含 22 个视觉效果,因此某些视觉对象必须等待其他视觉对象完成其任务,然后才能执行任何操作。

那如何提高性能?在此我们使用一个能够产生许多相同的卡片图的外置视觉对象。例如,通过使用 OKVIZ 的 Cards with States,可以创建一张卡片图网格,其中对列的每个值重复测量。此自定义视觉效果可在 Power BI 的 AppSource 中添加,所有功能都是免费的,

v2-d0ce7560ac6a7ae8e2ab44f6c716d5eb

 

我们以计算每一个产品子类别的销售额为例,将 Measures(度量)设为「销售总额」,将 Category(类别)设为 ProductSubCategory(产品子类别)

v2-47e3781a25f90593f2ceb44f7ea4193c

v2-8fe22aa308ad6ad9704851611a6be8a7

如果我们在性能分析器中重复执行「刷新视觉对象」操作,则会看到最慢的视觉对象在 228 毫秒内刷新,并且 DAX 查询现在仅生成 2 个视觉效果,见图 7.2.77。

v2-2e50720072bcf8fc190b221e65fed7d4

因为我们从报表中删除了 20 个视觉效果,所以大大减少了运算量,且页面刷新时间从 1.5 秒降至 0.2 秒,无须更改数据模型即可减少 86% 的运行时间。

相关推荐

power动态切换指标

动态配色 复制报表页 复制一份「动态切换度量值」报表页,将柱形图的「轴」字段换成日期表中的「年月」字段,「值」 ...

Power bi 动态切换指标

在项目中如果使用比较多度量值,如果一个个都拖入可视化表中会比较繁杂。我们可以使用切片器来切换可视化中的度量值 ...