PowerBI开发 第十三篇:增量刷新
PowerBI 将要解锁增量刷新(Incremental refresh)功能,这是一个令人期待的更新,使得PowerBI可以加载大数据集,并能减少数据的刷新时间和资源消耗,该功能目前处于预览状态,只对 Power BI Premium 版本开放预览。
增量刷新只是加快了数据集刷新的速度,对于具有潜在数十亿行的大型数据集,可能还是不适合Power BI Desktop,因为它通常受用户桌面PC上可用资源的限制,以及系统的限制。 因此,这些数据集通常在导入时被过滤,以适应Power BI Desktop。 无论是否使用增量刷新,情况仍然如此。
通常情况下,增量是基于时间戳字段的,在数据源更新数据时,同时更新时间戳。PowerBI保存上一次刷新时的时间戳last_timestamp,所有大于last_timestamp的数据行都是新增加的数据行,也就是说,改变的数据行会被加载到PowerBI的数据集中。
我的PowerBI开发系列的文章目录:PowerBI开发
一,启用增量刷新
增量刷新默认是禁用的,启用增量刷新的步骤是:打开选项和设置(Options and Settings)窗口,在全局选项(Global)的 “Preview features” 选项卡中,勾选“Incremental Refresh Policies”,这样就启用了PowerBI Service的增量刷新功能。
目前该功能仍然处于预览阶段,后续可能会被加强,这么酷的一个feature,没有道理会被弃用。
二,设置RangeStart和RangeEnd参数
要在Power BI服务中利用增量刷新,首先需要创建时间区间,这要求用户在Power Query 编辑器中创建RangeStart和RangeEnd参数,该参数的名称是保留名称,类型必须是Date/Time,PowerBI Service使用这两个参数实现数据集的增量刷新。
创建参数的窗口如下图所示,Type必须选择Date/Time类型,并设置默认值(Current Value)。
三,使用参数过滤查询
使用定义的参数RangeStart和RangeEnd,对查询的Date/Time字段进行过滤。选中Date字段,展开 "Date/Time Filters" ,选择“Custom Filter”,
在“Filter Rows”对话框中,设置用于过滤数据行的表达式,如下图所示:
一旦发布PowerBI,那么参数值会被PowerBI Service自动覆盖,这种行为不需要显式设置。
四,定义刷新策略
在PowerBI Desktop中定义刷新策略,在PowerBI Service中应用刷新策略。
在Report视图中,选择被参数RangeStart和RangeEnd过滤的表,右击弹出快捷菜单,点击“Incremental Refresh”,
打开增量刷新的窗口,如下图所示,在该窗口中定义增量刷新的策略:
1,为数据表启用增量刷新
2,定义刷新的区间
数据刷新的区间包括保留区间和增量区间,保留区间为6个月,增量区间为7天,这意味着保留近6个月的数据,当刷新数据时,加载数据的时间区间是:开始日期=当前日期-7天, 结束日期=当前日期
PowerBI会把在6个月之前的数据从Data Set中移除。
在第一次刷新时,PowerBI会一次性加载6个月的数据,这是依次全量刷新,之后的数据刷新都按照该区间进行增量刷新。
3,探测数据变化
当勾选“Detect data changes”选项时,您能选择一个Date/Time列作用时间戳,当探测到该列发生改变时,PowerBI才会启动增量刷新进程。如果该列没有发生任何改变,那就没有必要去刷新数据。
当前的设计要求PowerBI Service保持用于探测数据变化的列不变,并缓存到内存中。
4,只刷新完整日期
当勾选“Only refresh complete periods”时,PowerBI不会加载当天的数据,因为当天的数据不是一天的完整数据。
五,归并更新
PowerBI Service使用基于时间戳的归并方法实现数据集的增量更新,归并更新的实现逻辑是:添加新的数据,对已经存在的数据进行更新,并移除超过保留的时间窗口之外的数据。
例如,以下示例定义了一个刷新策略:
用于存储总共5年的数据,并逐步刷新10天的数据。 如果每天刷新数据集,则将对每个刷新操作执行以下操作:
- 添加新的一天数据,(添加新的数据);
- 刷新在当前日期前10天的数据,(对已经存在的数据进行归并更新);
- 删除当前日期之前超过5年的数据。 例如,如果当前日期是2019年1月1日,则删除2013年的数据,(移除超过保留的时间窗口之外的数据)。
参考文档:
Incremental refresh in Power BI Premium
转载于:https://www.cnblogs.com/ljhdo/p/5556878.html
PowerBI开发 第十三篇:增量刷新相关推荐
- PowerBI开发 第十篇:R 脚本
R是一种专门用于数据分析和统计的脚本语言,广泛应用在每一个需要统计和数据分析的领域.PowerBI支持R脚本,两者强强结合,使PowerBI的功能更加强大.PowerBI Desktop默认没有安装R ...
- PowerBI开发 第四篇:DAX表达式
DAX 表达式主要用于创建度量列(Measure),度量值是根据用户选择的Filter和公式,计算聚合值,DAX表达式基本上都是引用对应的函数,函数的执行有表级(Table-Level)上下文和行级( ...
- MFC开发IM-第十三篇、MFC改变字体重影的问题
//设置显示字体 CFont * cFont = new CFont; LPCTSTR lPCTSTR = _T("Arial"); cFont->CreateFont( ...
- PowerBI开发 第21篇:关键因素(Key Influencer)
关键因素(Key Influencer)图表能够帮助用户分析KPI的因素,并按照因素的重要性进行排名,也就是说,该图表可以查看哪些因素会影响到KPI,并计算出因素的相对重要性.使用Key Influe ...
- powerbi实时刷新mysql数据库_PowerBI开发 第七篇:数据集和数据刷新
PowerBI报表是基于数据分析的引擎,数据真正的来源(Data Source)是数据库,文件等数据存储媒介,PowerBI支持的数据源类型多种多样.PowerBI Service(云端)有时不直接访 ...
- PowerBI开发 第十六篇:PowerBI Service基本概念
PowerBI Service 有时也称作PowerBI Online,是PowerBI的Saas(Software as a service)部分.在典型的PowerBI开发的工作流程中,用户使用P ...
- PowerBI开发 第九篇:修改查询
在PowerBI的查询编辑器(Query Editor)中,用户可以使用M语言修改Query,或修改Query字段的类型,或向Query中添加数据列(Column),对Query进行修改会导致Powe ...
- PowerBI开发 第一篇:设计PowerBI报表
PowerBI是微软新一代的交互式报表工具,把相关的静态数据转换为酷炫的可视化的,能够根据filter条件,对数据执行动态筛选,从不同的角度和粒度上分析数据.PowerBI主要由两部分组成:Power ...
- Xamarin.Forms开发实战基础篇大学霸内部资料
Xamarin.Forms开发实战基础篇大学霸内部资料 介绍:本教程是国内第一本Xamarin.Forms开发专向教程.本教程针对Xamarin.Forms初学用户,全面细致的讲解Xmarin.For ...
最新文章
- “华为云杯”2020深圳开放数据应用创新大赛线上推介会成功举办,让深圳大数据在全球“跑”起来...
- Flask环境的配置
- 文件查询工具locate和find
- springboot 中文文档_比Swagger还好用的自动生成接口文档工具
- 汇编学习心得(二)关于字符的处理
- 什么是序列化?python pickle模块
- [云炬创业基础笔记]第二章创业者测试17
- CSS设置文本字体居中
- mysql去掉两个最高分_数据分析系列 16/32 | MySQL中子查询与联合查询
- 基于node.js及express实现中间件,实现post、get
- 江陵中学2021高考成绩查询,2021高考序幕拉开 荆州38080名考生赴考
- 信息检索 IR 中的评价指标
- Andromeda OS 来了,Android 再见?
- MySQL 一条SQL语句执行得很慢的原因有哪些?
- 数据中心的“风火水电”
- android卡通头像,Q版卡通头像设计
- JAVA基础语法(1)
- 麦克风有电流声怎么办?
- 手把手带你使用ZigBee——通过爱智控制EFR32,以及 Simplicity Studio 使用过程中注意事项
- 使用openpose做的运动检测[附代码]
热门文章
- 【Android O】 Service AAA does not have a SELinux domain defined
- 十行代码,用Python做一个迷你版的美图秀秀
- Android 音频录制 的三种方式
- linux文档_Linux文档
- mysql修改密码(win)
- 鼻纹识别,让AI寻宠照进现实
- 梅科尔工作室-第一次网页前端培训笔记(HTML常用标签)
- qsql 关联_QTableView与QSqlTableModel显示mysql数据库中的数据,怎么在QTableView的项中添加chekbox按钮与上拉列表啊真心求指导...
- 快速软件开发——项目修复(笔记)
- 定档9.11|腾讯全球数字生态大会 · CSS峰会,邀您共启安全新思维