如何在版本控制中使用Power BI Desktop?

15

亲爱的同志们,您好:

我正在制作一系列Power BI仪表板,并且在它们进入生产环境之前,我想将它们放入TFS中。然而,由于涉及到大量数据集,其中一些报告定义非常大(1.6GB)。

强制TFS存储所有实际数据似乎不是一个好主意,因为只有定义才真正重要。

有没有一种简单的方法可以从.pbix文件中删除数据或仅保存定义?

编辑:看起来随着PowerBI模板的创建,Microsoft已经使这个问题过时了。PowerBI 4月更新 尽管如此,答案中的解决方法可以用于其他目的。


你要使用Visual Studio Team Services吗?你是想将数据集添加到TFS中吗?一旦添加到VSTS中,这些数据集可以被检索出来吗?因为检索VSTS数据的数据源实际上是公共REST API。一旦连接,通过这些API检索项目中的数据并将其存储在Power BI的表格模型中。 - Cece Dong - MSFT
1
不,我们正在使用本地的TFS 2012。不行。一旦将数据集添加到VSTS中,它们是否可以被检索?我不确定你在问什么。我想将PowerBI桌面文件视为SSRS .rdl文件,以便它适合我们当前的版本控制模式,但我不确定如何做到这一点。 - Eric Hauenstein
请仔细阅读以下链接:http://www.sqlchick.com/entries/2015/8/6/ways-to-utilize-power-bi-in-a-bimodal-bi-environment 和 http://community.powerbi.com/t5/Integrations-with-Files-and/Maximum-size-for-pbix-files/m-p/11292。基本上,如果您没有使用实时数据源,则数据模型将嵌入到pbix文件中,并且没有明显的方法可以截断它,这也是我想了解如何操作的内容。 - Liesel
3个回答

8
我会添加一个“参数”查询(使用“编辑查询/编辑数据”创建的单行表格),其中包含一个名为[Data Load]的列,其中包含一行内容为“Yes”的值。
然后,我会在所有其他查询的末尾添加一个过滤步骤,引用该“参数”查询。过滤语法如下: Parameters{0}[Data Load] = "Yes" 这个语法有点晦涩 - 它的意思是:
转到参数查询,获取第1行中[Data Load]列的值,测试它是否等于“Yes”。
当您想要清空.pbix文件中的所有数据时,请编辑“参数”查询中的源步骤,并将[Data Load]值更改为“No”,然后应用和刷新。
我已经建立了一个可下载并尝试的工作示例,您可以从我的OneDrive上下载。

http://1drv.ms/1AzPAZp

这是文件:Power BI演示 - 动态筛选所有数据.pbix


2
这是一个巧妙的技巧。我希望微软将来能够让它变得更简单一些。 - Eric Hauenstein
2
他们拥有——它被称为 Power BI 桌面模板:https://powerbi.microsoft.com/zh-cn/blog/deep-dive-into-query-parameters-and-power-bi-templates/ - Mike Honey
感谢Andy Wilburn指出示例文件已经丢失。我已经编辑了它,以相同的方式使用当前的查询参数功能。这使您可以逐个表格地控制要删除的数据,而模板始终会删除所有数据。 - Mike Honey
使用查询参数,现在过滤步骤的语法为#"Data Load" = "Yes"。 - Mike Honey

2
使用“另存为”选项将pbix文件转换为pbit文件,然后在Visual Studio中对这些pbit文件进行版本控制,并在服务器上进行控制。

0

这种方法有点有趣。当您提交 .pbix 文件时,它会将其上传到 Premium,提取模型的 JSON 元数据,然后将其与 .pbix 文件一起提交回 DevOps。这样,您就可以随着时间的推移查看模型元数据的差异,包括 Power Query 更改、度量更改等。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接