Power BI 嵌入式分析中的容量计划

计算 Power BI 嵌入式分析部署所需的容量类型可能很复杂。 所需的容量取决于多个参数,其中一些参数难以预测。

计划容量时需要考虑的一些事项包括:

  • 使用的数据模型。
  • 必需查询的数量和复杂度。
  • 应用程序使用情况的每小时分布。
  • 数据刷新频率。
  • 难以预测的其他使用模式。

注意

本文介绍如何计划所需的容量,以及如何对 Power BI 嵌入式分析 A-SKU 执行负载测试评估。

计划容量时,请执行以下步骤:

  1. 优化性能和资源消耗
  2. 确定最小 SKU
  3. 评估容量负载
  4. 设置容量自动缩放

优化性能和资源消耗

在开始进行任何容量计划或负载测试评估之前,请优化报表和语义模型的性能和资源消耗(尤其是内存占用情况)。

要优化性能,请遵循以下资源中的准则:

有关优化性能的详细教程,请参阅在 Power BI 中优化模型性能培训模块。

确定最低 SKU

下表汇总了取决于容量大小的所有限制: 若要确定容量的最小 SKU,请查看“语义模型”标头下的“最大内存 (GB)”列。 此外,请记住当前的限制

SKU 容量单位 (CU) Power BI SKU Power BI v-core
F2 2 空值 空值
F4 4 空值 空值
F8 8 EM1/A1 1
F16 16 EM2/A2 2
F32 32 EM3/A3 4
F64 64 P1/A4 8
F128 128 P2/A5 16
F256 256 P3/A6 32
F5121 512 P4/A7 64
F10241 1,024 P5/A8 128
F20481 2,048 空值 空值

1 这些 SKU 并非在所有区域都可用。 若要请求在不可用的区域使用这些 SKU,请联系 Microsoft 客户经理。

评估容量负载

要测试或评估容量负载,请执行以下步骤:

  1. 在 Azure 中创建 Power BI Embedded 容量用于测试。 使用一个与 Microsoft Entra 租户(与 Power BI 租户相同)关联的订阅,并使用一个登录到同一租户的用户帐户。

  2. 为用于测试的一个或多个工作区分配你创建的 Premium 容量。 可以通过以下方式之一分配工作区:

  3. 以容量管理员身份安装 Microsoft Fabric Capacity Metrics 应用。 提供容量 ID 和时间(以天为单位)进行监视,然后刷新数据。

  4. 使用 Power BI 容量负载评估工具评估容量需求。 此 GitHub 存储库还包含视频演练教程。 请谨慎使用此工具:使用多达几十个并发模拟用户进行测试,并推断更高的并发负载(数百或数千个并发负载,具体取决于需求)。有关详细信息,请参阅评估容量负载。 或者,使用其他负载测试工具,但将 iFrame 视为黑盒,并通过 JavaScript 代码模拟用户活动。

  5. 使用在步骤 3 中安装的 Microsoft Fabric Capacity Metrics 应用监视通过负载测试工具产生的容量利用率。 或者,可以通过使用 Azure Monitor 中的警报查看 Premium 指标来监视容量。

如果负载测试在容量上产生的实际 CPU 接近容量限制,请考虑为容量使用更大的 SKU。

设置自动缩放

可以使用以下自动缩放技术弹性调整 A-SKU 容量的大小,以满足当前内存和 CPU 需求。

  • 使用容量更新 API 纵向扩展或纵向缩减容量 SKU。 若要了解如何使用 API 创建自己的脚本来进行纵向扩展和纵向缩减,请参阅 runbook PowerShell 脚本容量纵向扩展示例

  • 使用 Monitor 警报跟踪以下 Power BI Embedded 容量指标:

    • 重载(如果容量的 CPU 已超过 100% 且处于重载状态,则为 1,否则为 0)
    • CPU(CPU 使用率百分比)
    • 每个工作负载的 CPU(如果使用特定工作负载 (如分页报表))
  • 配置 Monitor 警报,确保当这些指标达到指定值时,触发脚本运行以纵向扩展或纵向缩减容量。

例如,可创建以下规则:如果重载 = 1 或 CPU = 95%,则调用纵向扩展容量 Runbook 以将容量更新到更高的 SKU。 还可创建以下规则:如果 CPU 低于 45% 或 50%,则调用纵向缩减容量 Runbook 脚本以将容量更新到较低的 SKU。

你还可以在刷新语义模型之前和之后,按需以编程方式调用纵向扩展 Runbook 和纵向缩减 Runbook。 此方法确保容量有足够的 RAM (GB) 用于使用该容量的大型语义模型。