Power BI 中的增量刷新


本文参考文档:https://docs.microsoft.com/en-us/power-bi/admin/service-premium-incremental-refresh

什么是增量刷新?

增量刷新数据。一般情况下,在PowerBI或PowerBI Desktop中点击【刷新】按钮,会将数据源的数据全部刷新一遍。假设有2018-2020年的订单数据,2018年,2019年的订单数据是不发生变化的,2020年的订单数据在不断增加,如果全部刷新显然会耗时费力,这时候我们就可以使用增量刷新了。

注意:现在,增量刷新可用于Power BI Pro,Premium和共享的订阅和数据集。

增量刷新在Power BI的大型数据集中具有以下优势:

刷新更快捷 - 只需刷新已更改的数据。 例如,只刷新 10 年数据集中最近 5 天的数据。
刷新更可靠 - 不再需要维护与不稳定的源系统的长期连接。
降低资源消耗 - 要刷新的数据量减少,这降低了内存和其他资源的整体消耗。

配置增量刷新

增量刷新策略在Power BI Desktop中定义,并在发布到Power BI服务时应用。

如何配置增量刷新?

1.设置RangeStart和RangeEnd参数

要在Power BI服务中利用增量刷新,首先需要创建时间区间,这要求用户在Power Query 编辑器中创建RangeStartRangeEnd参数(保留名称且区分大小写),类型必须是日期/时间,并设置默认值。Power BI服务使用这两个参数实现数据集的增量刷新。

创建参数的窗口如下图所示。PS:数据均为虚拟数据。

file

2.使用参数过滤查询

使用已定义的参数,然后可以通过为列选择“ 自定义过滤器”菜单选项来应用过滤器。

file

在“自定义过滤器”对话框中,设置用于过滤数据行的表达式,如下图所示:
file

注意:确保查询中的RangeStart 或 RangeEnd 参数上存在一个等号(=),但二者不能同时具有等号。如果这两个参数都具有等号(=),部分行可能满足两个分区的条件,导致模型中存在重复数据。

3.定义刷新策略

在Power BI Desktop中定义刷新策略,在Power BI 服务中应用刷新策略。

(1)在报表视图中,选择被参数RangeStart和RangeEnd过滤的表,右击弹出快捷菜单,点击“增量刷新”。

file

(2)打开增量刷新窗口,如下图所示,在该窗口中定义增量刷新的策略。

file

注意:只有部分本身拥有特定查询语言的数据源支持进行查询折叠,例如SQL Server,Oracle以及支持用ODBC连接的数据源。例如Excel,CSV,Website这种本身没有任何查询机制的数据源则不支持查询折叠。如上图,导入的数据为Excel数据源,则出现黄色警告。

(3)启用增量刷新,定义刷新的区间。

为数据表启用增量刷新,数据刷新的区间包括存储区间和刷新区间,存储区间为5个月,刷新区间为7天。当刷新数据时,刷新在当前日期前7天的数据,存储当前日期5个月的数据,删除当前日期之前超过5个月的数据。

(4)检测数据更改。

当勾选“检测数据更改”选项时,可选择用于仅标识和刷新数据更改日期的日期/时间列,当检测到该列发生变化时,才会启动增量刷新进程。如果该列没有发生变化,则无需刷新数据。

(5)仅刷新全天。

当勾选“仅刷新完成天”选项时,PowerBI不会加载当天的数据,因为当天数据非完整一天的数据。

发布到服务

配置完增量刷新,在刷新模型时候,首次刷新可能需要长时间来导入历史数据。 后续刷新使用增量刷新功能,速度会大幅提升。

  • PowerPivot工坊原创文章,转载请注明出处!

    如果您想深入学习微软Power BI,欢迎登录网易云课堂试听学习我们的“从Excel到Power BI数据分析可视化”系列课程。或者关注我们的公众号(PowerPivot工坊)后猛戳”在线学习”。

Power Pivot工坊