首页 文章

创建通用PowerBI模型以在多个客户端站点进行部署和填充

提问于
浏览
2

我有一个行业特定的(想想:房地产,建筑)通用模型,我想 Build 它作为咨询每个客户的起点 . 据推测,这个模型也需要为每个客户端进行一些自定义,现在我假设它不会被合并回原始基础模型 . 每个客户都将以不同的方式存储他们的数据版本(ERP,SQL,Excel,CSV等)

我的问题与我应该如何以及在何处构建此模型以及如何填充它有关 . 是否应该在PowerBI桌面中构建模型,然后使用PowerQuery加载数据追加查询?或者,如果模型是在SQL Server中构建的,并且更传统的ETL脚本首先填充它,然后将其导入到PowerBI中?

1 回答

  • 2

    在使用Power BI Desktop执行ETL或在SQL Server中执行ETL然后将最终数据导入Power BI Desktop之间进行选择可归结为3个因素:

    • Portability . 为您的ETL使用Power BI Desktop意味着您的整个解决方案都在Power BI Desktop中 - 您不能保证每个客户端都具有相同版本的SQL Server和相同的ETL工具,那么我不建议在这些外部工具上构建依赖关系 . 例外:如果您的客户将是构建ETL的客户端,那么您可能希望将客户端编写的ETL保留在Power BI Desktop解决方案之外 - 您可能不会关心他们使用的数据库/ ETL解决方案,只要因为最终结果符合您的规格

    • Processing Power (或ETL的密集程度) . 如果ETL是高度密集的并且需要运行服务器的所有功能,那么SQL Server /传统ETL可能会更好 . Power BI Desktop中的任何ETL都必须在安装Power BI Desktop的位置运行 . 如果这是一个规格较低的计算机,那么密集的ETL将比使用传统的基于服务器的ETL工具慢得多 .

    • Maintainability . 如果您要继续维护ETL,那么坚持使用您非常熟悉的工具(如Power Query)是比为每个客户端使用不同的外部ETL工具更好的计划 . 但是,如果您的客户端要维护ETL,那么他们可能更喜欢以与其维护的其他ETL相同的方式构建ETL .

    我想,鉴于你正在与多个客户合作,这种便携性几乎胜过其他一切 . 您对客户的需求越少越好 .

    此决定中无关紧要的是数据大小,因为无论如何(如您在问题中指定的那样),所有数据都将导入到Power BI Desktop中 .

    如果您要走外部数据库/ ETL解决方案的路径,那么自然的下一步将是探索直接查询模式或与多维数据集的实时连接(而不是导入数据) . 这种优缺点将是您决定考虑的另一个因素 . 但是,既然你想要依赖它 .

    总的来说,根据您的情况(为客户构建解决方案),我建议使用Power BI Desktop .

    对于正在阅读这些正在构建内部解决方案的其他人来说,建议不一定相同(并且取决于适用于他们的情况) .

相关问题