在 Power BI 中监视报表性能

使用 Performance Analyzer监视 Power BI Desktop 中的报表性能。 监视将帮助你了解瓶颈的位置,以及如何提高报告性能。

监视性能在以下情况下相关:

  • 导入数据模型刷新速度缓慢。
  • DirectQuery 或实时连接报表速度缓慢。
  • 模型计算速度较慢。

应重点针对速度缓慢的查询或报表视觉对象进行持续优化。

注意

性能分析器不能用于监视 Premium Per User (PPU) 活动或容量。

使用查询诊断

在 Power BI Desktop 中使用 查询诊断 来确定在预览或应用查询时 Power Query 正在执行的操作。 此外,使用 诊断步骤 函数来记录每个查询步骤的详细评估信息。 结果在 Power Query 中可用,你可以应用转换来更好地了解查询执行。

显示 Power Query 编辑器工具功能区选项卡的屏幕截图,其中显示了“诊断步骤”命令、“启动诊断”命令和“停止诊断”命令。

使用性能分析器

使用 Power BI Desktop 中的 性能分析器 来了解每个报表元素(如视觉对象和 DAX 公式)的工作原理。 这特别有用,可以确定是查询还是视觉呈现导致了性能问题。

使用 SQL Server Profiler

还可以使用 SQL Server Profiler 来标识速度较慢的查询。

注意

SQL Server Profiler 作为 SQL Server Management Studio的一部分提供。

当数据源为以下任一情况时,请使用 SQL Server Profiler:

  • SQL Server
  • SQL Server Analysis Services
  • Azure Analysis Services

谨慎

Power BI Desktop 支持连接到诊断端口。 诊断端口允许其他工具建立连接,以便出于诊断目的执行跟踪。 只有特定的操作支持对 Power Desktop 数据模型进行任何更改。 对不支持的操作的数据模型进行的其他更改可能会导致损坏和数据丢失。

若要创建 SQL Server Profiler 跟踪,请按照以下说明操作:

  1. 打开你的 Power BI Desktop 报表(这样在下一步中可以轻松找到端口,并关闭其他已打开的报表)。
  2. 若要确定 Power BI Desktop 正在使用的端口,请在 PowerShell(具有管理员权限)或命令提示符处输入以下命令:
    netstat -b -n
    
    输出将是应用程序及其打开端口的列表。 查找 msmdsrv.exe使用的端口,并记录该端口供以后使用。 这是您的 Power BI Desktop 实例。
  3. 将 SQL Server Profiler 连接到 Power BI Desktop 报表:
    1. 打开 SQL Server Profiler。
    2. 在 SQL Server Profiler 的“文件”菜单上,选择“新建跟踪”
    3. 对于 服务器类型,请选择 Analysis Services
    4. 对于“服务器名称”,请输入 localhost:[之前记录的端口]
    5. 单击 运行— 现在 SQL Server Profiler 跟踪是实时的,并且正在主动分析 Power BI Desktop 查询。
  4. 执行 Power BI Desktop 查询时,你将看到各自的持续时间和 CPU 时间。 根据数据源类型,你可能会看到指示查询的执行方式的其他事件。 使用此信息,可以确定哪些查询是瓶颈。

使用 SQL Server Profiler 的好处是可以保存 SQL Server(关系)数据库跟踪。 跟踪可能会成为数据库引擎优化顾问的输入。 这样,便可以收到有关如何优化数据源的建议。

监视 Premium 指标

借助 Fabric Capacity Metrics 应用,监视部署到组织 Power BI Premium 容量中的内容的性能。

有关本文的详细信息,请查看以下资源: