提高仪表板性能:最佳实践
如果仪表板运行缓慢,可能是因为源报告效率低下,或者是因为许多人正在同时刷新它。通过优化源报告和计划仪表板刷新,可以加快速度。按照本指南中的提示加快缓慢的仪表板!
所需的 Edition
| 适用于:Salesforce Classic 和 Lightning Experience |
| 适用于:Essentials、Group(仅视图)、Professional、Enterprise、Performance、Unlimited 和 Developer Edition |
在 Salesforce Classic 中,小部件称为组件。
使用高效的源报表
刷新仪表板时,所有源报表都会运行。如果源报表需要很长时间才能运行,那么基于它们的仪表板需要很长时间才能刷新。
以下是如何优化源报表性能以使仪表板快速刷新的方法。
- 创建快速运行的源报表
-
加快慢速仪表板的最佳方法是加速其源报表。源报表运行得越快,仪表板刷新得越快!
有很多方法可以加快慢速源报表。
- 高效筛选报表数据
- 删除不必要的列
- 隐藏详细信息行
- 编写高效的公式
有关提高报表性能的完整指南,请参见改进报表性能。
- 将您的仪表板基于尽可能少的源报表
-
理想情况下,将您的仪表板基于单一来源的报表。
每个仪表板小部件会从一个源报表中获取数据,但多个仪表板小部件可以从同一个源报表中获取数据。基于较少源报表的仪表板刷新速度快于基于许多源报表的仪表板。源报表越少,仪表板收集数据时所需运行的报表就越少。刷新速度最快的仪表板仅基于一个源报表。
作为最佳实践,创建一个返回大量数据的源报表,然后在仪表板小部件之间分配这些数据。
例如,假设您正在创建一个销售概览仪表板,显示未处理的业务机会和已结束的业务机会的详细信息。您可以创建两个来源报表,一个返回未处理的业务机会,另一个返回已结束的业务机会。但是当刷新时,您的仪表板必须运行两个源报表。相反,创建一个返回所有业务机会并按状态分组的单一来源报表。现在,您可以使用单个源报表创建仪表板,这比使用两个源报表的仪表板刷新更快。
备注 源报表异步刷新。这意味着当您刷新仪表板时,Salesforce 会将每个要运行的源报表排队,然后与任意数量的其他进程一起运行它们。根据其在队列中的位置,有时只有一个源报表的仪表板的加载速度比有两个源报表的仪表板稍慢。Salesforce 有时必须更新个案状态、创建客户并发送一批电子邮件,然后才能运行仪表板的源报表。
有些报表比其他报表运行时间长。缓慢源报表有时比两个类似的快速源报表运行时间更长。
有时刷新只有一个源报表的仪表板会导致同一源报表多次运行。包括具有不同分组的仪表板小部件、应用仪表板筛选器以及更改仪表板的运行用户都可能导致同一源报表运行多次。在这些场景中,源报表越少并不一定越快。
一般来说,源报表较少的仪表板比源报表较多的仪表板刷新得更快。
谨慎刷新仪表板
刷新仪表板会使 Salesforce 运行的几个流程排队,从而获得最新数据。运行每个源报表,应用筛选器,绘制图表等等。Salesforce 将每个用户刷新仪表板的次数限制为每分钟一次。此限制可确保 Salesforce 不会重复运行同一报表,这也允许其他重要流程运行,例如更新个案或创建客户。
但是如果许多不同的人同时刷新同一个仪表板会发生什么呢?
Salesforce 将每个组织每小时刷新仪表板的次数限制在 200 次。此限制仅适用于通过 REST API 或 Apex 执行的仪表板刷新,并且不会影响通过用户界面执行的手动仪表板刷新。即使有这样的限制,运行缓慢的仪表板也会导致队列比必要的后台进程更加繁忙,迫使其他人等待。如果 200 人刷新仪表板并达到组织限制,会怎么样?因为 200 人刷新了同一个仪表板,所以,其他团队现在必须等待一个小时才能刷新他们的仪表板。
Salesforce 会记住每个用户的仪表板筛选器设置。要应用特定于用户的筛选器设置,如果有人刷新已筛选的仪表板,则当任何已应用仪表板筛选器的人打开仪表板时,仪表板会重新刷新。因此,已筛选的仪表板特别容易达到每小时 200 次仪表板刷新的组织限制。
想象这样一个场景,10000 人刷新一个仪表板,导致 10 个源报表运行排队。理论上,10000 x 10 = 1000000 个报表在后台运行,但是由于每个组织每小时刷新 200 次的限制,所以,只有 200 x 10 = 2000 个后台报表在后台运行。即使是快速运行的报表,这也可能需要一段时间!
与其让很多人同时刷新仪表板,不如订阅仪表板。当您订阅仪表板时,您需要设置时间表和收件人。Salesforce 会在您计划仪表板时刷新仪表板,然后通过电子邮件将结果发送给收件人。Salesforce 缓存数据。当人们打开仪表板时,他们会看到截至上次计划刷新的最新数据,并且不需要再次刷新。
- 从“仪表板”选项卡中,单击
| 订阅。 - 从“编辑订阅”菜单,设置刷新日程表。
- 在“收件人”中,您已自动选择为收件人。要添加其他人或移除您自己,单击编辑收件人。仅显示有权访问仪表板的人。
- 选择收件人,然后单击添加。
- 单击保存。
仪表板订阅开始,仪表板根据您设置的时间表刷新。
例如,假设您每周一早上刷新业务机会概览仪表板。您可以订阅仪表板,而不是手动运行仪表板,并在每周一上午 8:00 通过电子邮件发送给您和整个销售团队 (1)。当您早上 9:00 坐在办公桌前时,一份最近更新的仪表板已在等待您。
另请参阅
删除不必要的仪表板小部件
正如高效源报表比低效源报表运行得更快一样,小部件较少的仪表板往往比小部件较多的仪表板运行得更快。
- 将多个小部件组合成一个
-
有时,您可以在一个小部件中显示两个或更多小部件中的数据。将多个小部件合并为一个意味着运行的源报表更少,这意味着仪表板刷新更快。
例如,假设您有一个包含两个条形图的仪表板。一个按类型显示业务机会金额总和,另一个按类型显示平均业务机会金额。不要在两个条形图中分离这些相关指标,而是将它们合并到一个图表中。仪表板仍然按类型显示总值和平均业务机会数量,但是因为它只需呈现一个小部件,所以加载速度更快。
- 将仪表板一分为二
-
如果您的仪表板包含许多需要很长时间才能刷新的小部件,请考虑将仪表板一分为二。
假设您有一个汇总业务机会和个案的仪表板。将仪表板拆分为,一个用于业务机会,一个用于个案意味着可以更快地刷新仪表板。使用自定义链接,您甚至可以在仪表板之间来回链接,以便于导航。
以下是从一个仪表板链接到另一个仪表板的方法。
- 从仪表板生成器中,通过单击
编辑小部件。 - 从编辑组件菜单中,输入 /lightning/r/Dashboard/dashboard_id/view,其中,dashboard_id 是目标仪表板的 ID。
要获取目标仪表板 Id,请打开仪表板并从 URL 复制该 ID。ID 为 01ZRM0000005KO62AM 的目标仪表板条目为 /lightning/r/Dashboard/01ZRM0000005KO62AM/view。
- 单击更新。
- 单击保存。
现在仪表板查看器可以通过直接链接从一个仪表板导航到另一个仪表板。
- 从仪表板生成器中,通过单击

