在 Power BI Desktop 中设置视觉对象查询限制

适用范围:Power BI Desktop Power BI 服务

加载报表页或更改视觉对象中的字段时,该视觉对象会将查询发送到报表的数据源。 处理这些查询需要时间和计算机内存。 为了防止任何单个查询消耗过多的资源,已发布报表中的查询将受到查询运行时间的限制(超时),以及查询可以使用的内存量(内存限制)。 这些限制可能会根据数据的托管位置而更改。

下表显示了不同容量所应用的超时和内存限制。

容量 超时 内存限制
共享 225 秒 1,048,576 KB (1 GB)
高级 225 秒 10,485,760 KB (10 GB)
SQL Server Analysis Services 600 秒 1,048,576 KB (1 GB)
Azure Analysis Services 600 秒 10,485,760 KB (10 GB)

如果视觉对象发送的查询达到了托管容量所应用的某个限制,则该视觉对象将显示错误。

错误消息的屏幕截图。

Power BI Desktop 不会自然地将上述任何限制应用于本地模型。 但是,可以使用查询限制模拟来测试发布报表后可能应用于报表的任何限制。

在“选项”菜单中应用查询限制

  1. 选择文件>选项和设置>选项
  2. 在“当前文件”下,选择“报表设置” 。
  3. 滚动到“查询限制模拟”部分。 屏幕截图显示选项菜单中查询限制模拟部分可用。
  4. 使用下拉菜单选择要模拟的容量。 可以选择:
    • 自动(推荐)
    • 共享容量
    • 高级容量
    • SQL Server Analysis Services
    • Azure Analysis Services
    • 自定义限制
    • 无查询限制

默认情况下,新报表已选择“自动(推荐)”。 使用自动限制时,Power BI 将尽最大努力确定模型的托管位置并应用这些限制。 否则,它将默认使用共享容量限制,以确保 Desktop 上完成的查询将针对已发布的报表完成,无论报表的数据最终托管在何处。 在下拉列表下方,可以看到当前为所选容量应用的确切超时和内存限制。

如果选择应用自定义限制,请在输入字段中输入特定的超时和内存限制。 自行设置限制时,可以使用“0”来表示“无限制”。

注意事项和疑难解答

  • 在此功能可用之前创建的报表设置为“无查询限制”。如果视觉对象或报表似乎在 Power BI Desktop 上正常运行且无错误,但其他用户在尝试查看已发布的报表时遇到错误,请考虑应用本文中所述的查询限制。
  • 使用此报表设置定义的限制适用于从报表视图发送的所有查询。 从数据或模型视图发送的查询不会受到影响。
  • 使用实时连接报表时,你可能会注意到视觉对象在达到你设置的查询限制之前出错。 如果报表实时连接到的外部 Analysis Services 引擎自身有更严格的查询限制,则可能会发生这种情况。 即使 Power BI Desktop 按照本文中所述的报表设置应用了查询限制,查询仍将受到数据源施加的任何其他限制的约束。