配置增量刷新设置

已完成

Power BI 中的“增量刷新”功能是一项很受欢迎的功能,因为你可用它根据需要的频率快速刷新大型语义模型,无需每次都重新加载历史数据。

警告

只应对支持查询折叠的数据源和查询使用增量刷新。 如果不支持查询折叠,则增量刷新可能会导致用户体验不佳,因为尽管它仍会对相关分区发出查询,但它会拉取所有数据(可能多次进行)。

传统上,运行增量刷新需要复杂的代码,但你现可在 Power BI Desktop 中定义刷新策略。 刷新策略在你发布到 Power BI 服务时进行应用,该服务随后负责管理分区用于优化的数据负载,这会带来以下好处:

  • 刷新速度更快 - 仅刷新需要更改的数据。 例如,如果你有 5 年的数据,但只需要刷新过去 10 天的数据,理由是只更改了这些数据,那么增量刷新仅刷新这 10 天的数据。 毫无疑问,与刷新 5 年的数据相比,刷新 10 天数据所需的时间要短得多。

  • 刷新更可靠 - 无需再将长时间运行的数据连接保持在打开状态即可计划刷新。

  • 资源消耗更少 - 有序只需刷新较小的数据量,因此减少了内存和其他资源的整体消耗。

在本例中,销售团队遇到了一个难题,他们来找你帮忙。 问题就是他们报表中的数据已过时。 无法通过添加新文件来手动刷新数据,因为刷新需要定期进行,这样才能与销售交易发生的频率相一致。 此外,由于语义模型具有数百万行内容,因此手动刷新任务变得更加困难。 结果就是,你需要实现更好的数据刷新解决方案。

可以定义增量刷新策略来解决此业务问题。 此过程包括以下步骤:

  1. 定义筛选器参数。

  2. 使用参数来应用筛选器。

  3. 定义增量刷新策略。

  4. 将更改发布到 Power BI 服务。

定义筛选器参数

无论是否使用增量刷新,大型语义模型在导入 Power BI Desktop 时通常都会进行筛选,这是因为 PBIX 文件受台式计算机上可用的内存资源限制。 对于增量刷新,语义模型按两个日期/时间参数进行筛选:RangeStart 和 RangeEnd。 这些参数具有双重用途。 在 Power BI Desktop 中,它们是筛选时段,因为它们会将使用的数据限制为开始日期和结束日期中所列的范围。 这些参数在发布到服务后,会被接管成为滑动窗口来确定要拉取哪些数据。

若要定义增量刷新的参数,请执行以下步骤:

  1. 在 Power Query 编辑器中打开语义模型。

  2. 在“开始”选项卡上,选择“管理参数”。

  3. 在显示的“参数”窗口中,添加两个新参数(RangeStart 和 RangeEnd,确保这两个参数的“类型”设置为“日期/时间”,“建议值”设置为“任何值”。

  4. 对于“当前值”,为“RangeStart”参数输入希望开始导入的日期,为“RangeEnd”参数输入希望导入结束的日期。

    添加筛选器参数

应用筛选器

定义新参数后,可按照以下步骤应用筛选器:

  1. 转到适用的“日期”列,然后右键单击该列,再选择“自定义筛选器”。

    选择自定义筛选器选项

  2. 在显示的“筛选行”窗口中,若要避免重复计算行数,请确保保留 OrderDate 晚于等于 RangeStart 参数且早于 RangeEnd 参数的行。

    选择筛选行设置

  3. 在 Power Query 编辑器中选择“关闭并应用”。

你现在应会在 Power BI Desktop 中看到语义模型的子集。

定义增量刷新策略

筛选数据后,可以为数据表定义增量刷新策略,以设置刷新过程。

右键单击适用的表,然后选择“增量刷新”。

选择增量刷新选项

在显示的“增量刷新”窗口中,打开“增量刷新”选项。 然后,根据需要配置刷新。 在此示例中,你将定义一个刷新策略,以存储 5 个完整日历年的数据以及当前年度截止到当前日期的数据,并按增量方式刷新 10 天的数据。

选择增量刷新设置

Power BI 服务中的第一个刷新操作将加载过去 5 年的历史数据。 后续刷新操作是增量刷新,会刷新过去 10 天内更改的数据,直到当前日期。 增量刷新还会删除早于当前日期五年的日历年。

发布到 Power BI 服务

在 Power BI Desktop 中定义增量刷新策略后,若要应用该刷新策略,需要将报表发布到 Power BI 服务。

有关详细信息,请参阅 Power BI 上的增量刷新