PowerBI 开发 第23篇:共享数据集

简单来说,如果多个Report共用一个Dataset,那么这个Dataset是共享数据集。每当共享Dataset刷新后,任何引用这个Dataset的Report都会自动刷新,这也是共享数据集的一个优点。

共享数据集的一个重要作用,是把后端(建立数据集)的任务从整个报表开发流程中分离出来,后端只需要把精力集中在数据查询,模型关联等跟数据处理有关的工作上,而前端只需要把精力集中在DAX表达式和可视化的设计上,这对于BI团队的分工协作有重要意义。

一,什么是共享数据集?

在Power BI Service中,任何一个Report都由两部分构成:Report (可视化图表)和Dataset(数据集),两者的关系是:可视化图表引用数据集的数据,并以一定的UI显示数据。

当使用Power BI Desktop IDE进行报表开发时,可能会误以为报表和数据是一体的。虽然不会轻易的看到分开的Report和数据集,但是,只需要你打开Task Manager,在PowerBI Desktop进程下面存在Microsoft SQL Server Analysis Service,这就是报表的数据集部分,而Microsoft Power BI Desktop就是报表的可视化设计部分。

当把报表(PBIX文件)发布到Power BI Service之后,我们就能很容易看到报表是由report和dataset两部分构成的:

  • report 是报表的可视化实现,主要是由图表及其布局构成
  • dataset 主要包括数据表,数据字段的格式,关系(relationships),度量(Measure),计算列(calculated column)和连接(connection to the data source)等构成

例如,Alignment Report报表,在Workspaces中查看到两个同名的Name,但是Type不同:

Power BI共享数据集的优点是:只要数据集刷新,那么引用该数据集的报表都会自动刷新,节省了报表数据刷新的时间和算力,缺点是:使用共享数据集的报表,虽然可以新增Measure(Measure仅存在于本地报表中,不会同步到共享dataset),但是无法修改数据模型,比如,无法修改关系,不能创建计算列,不能查看共享Measure和计算列的定义,也不能在开发工具(Power BI Desktop)中查看共享数据集中的数据等,这导致报表开发的自由度受到限制。

二,如何使用共享数据集?

共享数据集的创建,连接和切换都十分简单,但是,由于共享数据集的限制,使得报表UI的开发会受到限制。是否使用共享数据集,由开发者根据需要权衡利弊。

1,创建共享数据集

任何Power BI dataset都可以是共享数据集,创建共享数据集的方法非常简单,只需要把PBIX文件发布到Power BI Service中,当发布成功之后,这个Dataset就可以作为共享数据集。

2,连接共享数据集

连接共享数据集的操作也是十分简单,在Power BI Desktop中新建一个报表,从Data hub中点击 Power BI datasets,并从datasets列表中选择合适的dataset,点击"Connect",开始连接共享数据集。

当连接到共享数据集之后,就可以使用dataset来进行可视化设计。报表和数据集之间的连接是Live Connection,Online 报表(已经发布到Power BI Service的report)的查询性能跟数据集是否共享没有关系,如果共享数据集使用Import方式连接数据源,那么引用共享数据集的报表的查询性能是非常快的。报表可以创建报表级别的Measure,但是建模会受到限制,数据模型只能在原始数据集中进行修改。

在Power BI Desktop中开发report时,report UI是local的,而共享dataset是online的,查询性能受到网络的影响,这也是Live Connection的特点。

3,如何切换共享数据集

从Home菜单中,选择Transform data,打开Data source settings,点击底部的“Change Source”按钮,切换共享数据集。

 

 

参考文档:

Power BI Shared Datasets: What is it? How does it work? and Why should you care?

posted @ 2023-06-12 15:59  悦光阴  阅读(328)  评论(0编辑  收藏  举报