Power BI 使用方案:高级数据模型管理

备注

本文是 Power BI 实现规划系列文章中的一篇。 本系列着重介绍 Microsoft Fabric 中的 Power BI 工作负载。 有关该系列的介绍,请参阅 Power BI 实施规划

此使用方案侧重于高级数据模型管理,即 Power BI 内容创建者依赖第三方工具来开发、管理或优化数据模型时。 一些第三方工具是 Power BI Desktop 直接支持的外部工具。 还可以通过直接与 Power BI 服务中的 XMLA 终结点通信来管理已发布的数据模型(语义模型 - 以前称为数据集)。

数据模型托管在 Power BI 服务、Azure Analysis Services (AAS) 或 SQL Server Analysis Services (SSAS) 中。 此使用方案侧重于在 Power BI 服务中使用 XMLA 终结点。

提示

许多人将第三方工具称为“外部工具”。 但是,不同工具的使用方式存在差异。 在 Power BI Desktop 中连接到本地数据模型是对术语“外部工具”最字面的解释。 此高级数据模型管理使用方案侧重于使用 XMLA 终结点连接到远程数据模型(Power BI 服务中托管的语义模型)。 有关使用第三方工具的不同方式的更多详细信息,请参阅本文后面部分

可以使用 XML for Analysis (XMLA) 协议实现与数据模型的连接。 XMLA 协议是一种行业标准协议,受到包括 Microsoft 在内的超过 25 家供应商的支持。 所有符合 XMLA 协议的工具(包括第三方工具)都使用 Microsoft 客户端库来读取数据和/或将数据写入数据模型。 连接是通过 XMLA 终结点实现的,XMLA 终结点是由数据模型公开的 API,它拓宽了语义模型创建者可用的开发和管理功能。

注意

此高级数据模型管理使用方案是内容管理和部署方案中的一种。 有关自助式使用方案的完整列表,请参阅 Power BI 使用方案

为简洁起见,本文未介绍内容协作和交付方案主题中描述的某些方面。 若要了解完整信息,请先阅读这些文章。

方案示意图

此高级数据模型管理使用方案的重点是使用表格编辑器来管理数据模型。 可以使用 XMLA 终结点将数据模型发布到 Power BI 服务,该终结点可用于 Power BI Premium。

提示

如果不熟悉自助式内容发布使用方案,我们建议你进行查看。 高级数据模型管理方案是基于该方案而生成的。

注意

有时,术语“语义模型”和“数据模型”可以交换使用。 通常,从 Power BI 服务的角度而言,它是指“语义模型”。 从开发角度而言,它是指“数据模型”(或简称为“模型”)。 在本文中,这两个术语具有相同的含义。 同样,语义模型创建者和数据建模者具有相同的含义。

下图简要概述了有助于开发、管理或优化数据模型的最常见用户操作和工具。

Diagram shows advanced data model management, which is about empowering creators with advanced modeling and publishing capabilities. Items in the diagram are described in the table below.

提示

如果想要将方案图嵌入演示文稿、文档或博客文章,或者将其打印为墙上海报,建议下载方案图。 由于它是可缩放矢量图形 (SVG) 图像,因此可以放大或缩小它,而不会造成任何质量损失。

该方案图描绘了以下用户操作、工具和功能:

项目 描述
Item 1. 模型创建者可使用表格编辑器开发数据模型。 通常,初始设计工作(如 Power Query 工作)在 Power BI Desktop 中完成,然后再切换到表格编辑器(方案图中未描绘)。
Item 2. 数据模型连接到一个或多个数据源中的数据。
Item 3. 某些数据源可能需要本地数据网关或 VNet 网关进行数据刷新,例如驻留在专用组织网络中的数据源。
Item 4. 数据模型开发是在表格编辑器中完成的。 支持编辑 Power Query (M) 脚本。 模型创建者可以使用 C# 脚本来加速开发。
Item 5. 准备就绪后,语义模型创建者使用目标工作区的 XMLA 终结点将数据模型从表格编辑器发布到 Power BI 服务。
Item 6. 将数据模型发布到专门用于存储和保护共享语义模型的工作区。 仅当工作区的许可模式设置为“Fabric 容量”、“高级容量”、“每用户高级”或“嵌入”时,才能使用 XMLA 终结点访问工作区
Item 7. 报表创建者通过使用与共享语义模型的实时连接来创建报表。
Item 8. 报表创建者在 Power BI Desktop 中开发报表。 除了有意将报表与语义模型分离外,内容创建者还遵循典型的报表创建流程。
Item 9. 准备就绪后,报表创建者会将其 Power BI Desktop 文件 (.pbix) 或 Power BI 项目文件 (.pbip) 发布到 Power BI 服务。
Item 10. 将报表发布到专门用于存储和保护报表和仪表板的工作区。
Item 11. 已发布的报表保持与存储在不同工作区中的共享语义模型的连接。 对共享语义模型所做的任何更改都将影响所有相关报表。
Item 12. 第三方工具可以使用 XMLA 终结点查询共享语义模型。 其他 XMLA 兼容的工具(如 DAX Studio、Fabric 笔记本中的语义链接或 Windows PowerShell)可用于查询或更新共享语义模型。 Power BI Desktop、Excel 和报表生成器也可以使用 XMLA 终结点进行连接(方案图中未描绘)。
Item 13. 其他 Microsoft 和第三方工具可以使用 XMLA 终结点来管理语义模型并提供应用程序生命周期管理。 若要了解详细信息,请参阅基于 XMLA 终结点的客户端工具
Item 14. Fabric 管理员可管理租户设置以支持使用 XMLA 终结点。 管理员必须为 Fabric 容量、高级容量和每用户高级设置启用 XMLA 终结点
Item 15. Fabric 管理员会在 Fabric 门户中监督和监视活动。

要点

以下是对于高级数据模型管理方案需要强调的一些要点。

第三方应用程序和工具

企业 BI 团队通常使用客户端工具,例如表格编辑器(方案图中已描绘并在下一主题中进行了介绍),以帮助他们管理集中式语义模型。 但是,任何想要使用高级建模功能的语义模型创建者都可以利用此使用方案中所述的方法。

可通过多种方式使用第三方应用程序:

  • 使用 XMLA 终结点连接到远程数据模型:一些第三方工具可以直接连接到 Power BI 服务(或 Analysis Services)中的远程数据模型。 连接到 XMLA 终结点后,即可支持所有表格对象模型 (TOM) 操作。 此方法是此使用方案的主要重点。
  • 连接到 Power BI Desktop 中的本地数据模型:一些第三方工具可以连接到在 Power BI Desktop 中打开的本地数据模型(方案图中未描绘)。 但是,存在一些限制,并非所有外部工具功能都能受正式支持。
  • 连接到 Power BI Desktop 中的模板文件:一些第三方工具通过使用 Power BI Desktop 模板文件 (.pbit) 以轻量级方式分发其功能(方案图中未描绘)。

表格编辑器

表格编辑器在方案图中进行了描绘。 它是一种第三方工具,已被 Power BI 社区广泛采用。 使用表格编辑器管理表格数据模型的一些优点包括:

  • 设置 Power BI Desktop 不支持的数据模型功能:表格编辑器提供了一个界面,可用于设置对象级别安全性 (OLS)、计算组、透视、转换和分区。
  • 支持并发模型开发:Microsoft 数据模型开发工具(例如 Visual Studio with Analysis Services 项目)将整个数据模型定义存储在一个 Model.bim 文件中。 这个单一文件会使开发人员团队难以针对单一数据模型进行协同工作。 表格编辑器具有一个名为“文件夹序列化”的功能。 “文件夹序列化”功能可将 Model.bim 文件解构为有序文件夹结构内单独的特定于对象的文件。 然后,不同的数据建模者可以处理不同的文件,而覆盖彼此工作的风险较小。
  • 与源代码控制集成:文件夹序列化使源代码控制系统能够轻松检测数据模型更改,从而更轻松地进行源合并和冲突解决。
  • 改进的数据模型质量和设计:表格编辑器与最佳做法分析器 (BPA) 集成。 BPA 通过一组可自定义的规则帮助数据建模者提高数据模型的质量、一致性和性能。 可以从 GitHub 下载一组最佳做法规则(由 Microsoft 提供)。
  • 开发数据模型时提高生产力:表格编辑器界面非常适合用于执行批量编辑、调试和查看数据模型依赖项。 表格编辑器与 Power BI Desktop 的不同之处在于它在“断开连接模式”下工作。 可以在断开连接模式下进行数据模型更改,并将更改作为一批编辑操作提交。 这样就可以加快开发和验证速度,尤其是对于经验丰富的数据建模者而言。 也可以创建 C# 脚本并将其另存为宏。 这些脚本可帮助你提高管理和同步多个数据模型的效率。

XMLA 终结点

XMLA 终结点使用 XMLA 协议公开表格数据模型的所有功能,包括 Power BI Desktop 不支持的一些数据建模操作。 可以使用 TOM API 对数据模型进行编程更改。

XMLA 终结点还提供连接。 仅当工作区的许可模式设置为“Premium Per User”、“Premium Per Capacity”或“Embedded”时,才能连接到语义模型。 建立连接后,XMLA 兼容的工具可以通过两种方式对数据模型进行操作:

  • 写入数据和元数据: XMLA 终结点的读/写使用可以实现以下内容:
    • Power BI Desktop 不支持的数据建模功能,例如对象级安全性 (OLS)、计算组、透视、转换和分区管理。
    • 更复杂的部署。 例如,部分部署或仅发布一个新度量值的仅限元数据的部署。
    • 异步语义模型刷新。 例如,刷新单个表或分区。
  • 读取数据和元数据: XMLA 终结点的只读使用可以实现以下内容:
    • 监视、调试和跟踪语义模型和查询。
    • 使第三方数据报告工具能够可视化共享语义模型中的数据。 此技术是扩展托管的自助式 BI 的收益和投资的好方法。

警告

使用 XMLA 终结点修改或发布语义模型后,无法再将数据集从 Power BI 服务下载为 Power BI Desktop 文件。

每个容量的 XMLA 设置

每个 Power BI Premium 容量和 Power BI Embedded 容量都有一个设置,用于控制 XMLA 终结点是只读、读/写还是关闭。 此设置也适用于 Power BI 租户中的所有 Premium Per User 工作区。 对于每个包含要使用 Power BI Desktop 以外的工具管理的语义模型的容量,必须启用读/写 XMLA 访问权限

提示

XMLA 终结点设置(读/写、只读或关闭)适用于分配给特定容量的所有工作区和语义模型。 可以设置多个容量来分散和/或自定义针对每个容量管理内容的方式。

XMLA 租户设置

除了 XMLA 终结点设置外,Power BI 管理员还必须使用租户设置来允许 XMLA 终结点和“在 Excel 中分析”使用本地语义模型。 启用后,可以允许所有用户或特定安全组使用 XMLA 终结点功能。

注意

所有标准安全和数据保护功能仍适用于指定哪些用户可以查看和/或编辑内容。

第三方工具

Power BI Desktop 可以满足大多数自助式内容创建者的端到端需求。 但是,第三方工具可提供其他企业特性和功能。 出于这个原因,第三方工具(例如表格编辑器)在 Power BI 社区中变得很常见,尤其是对于高级内容创建者、开发人员和 IT 专业人员而言。

提示

博客文章介绍了第三方工具如何使 Power BI 产品团队能够重新评估其开发优先级、扩大 Power BI 平台的覆盖范围以及满足用户社区的更高级和多样化的要求。

注意

某些第三方工具需要付费许可证,例如表格编辑器 3。 其他社区工具是免费和开源的(例如表格编辑器 2、DAX Studio 和 ALM 工具包)。 建议仔细评估每个工具的功能、成本和支持模型,以便能够充分支持内容创建者社区。

数据模型管理

此使用方案主要针对使用表格编辑器管理数据模型的内容创建者。 对于不常见的高级数据模型管理要求(例如偶尔进行分区管理),可以选择使用 SQL Server Management Studio (SSMS) 等工具。 .NET 开发人员还可以使用 TOM API 创建和管理 Power BI 语义模型。

提示

使用 XMLA 终结点进行数据模型管理时,建议启用大型语义模型存储格式设置。 启用后,大型语义模型存储格式可以提高 XMLA 写入操作的性能。

数据模型与报表的分离

若要使此使用方案成功,应该将报表与数据模型分开。 此方法导致需要管理单独的 Power BI Desktop 文件,如托管的自助式 BI 使用方案中所述。 即使同一个人负责所有开发,语义模型与报表的分离也很重要,因为表格编辑器不了解报表内容。

网关设置

通常,在访问驻留在专用组织网络或虚拟网络中的数据源时需要一个数据网关。 将数据模型发布到 Power BI 服务后,本地数据网关就会与此相关。 网关的两个作用是刷新导入的数据,或查看查询实时连接或 DirectQuery 语义模型的报表(方案图中未描绘)。

注意

强烈建议使用标准模式的集中式数据网关,而不要使用个人模式的网关。 在标准模式下,数据网关支持实时连接和 DirectQuery 操作(此外还支持计划的数据刷新操作)。

有关详细信息,请参阅本地数据网关(标准模式)

系统监督

活动日志记录 Power BI 服务中发生的用户活动。 Power BI 管理员可以使用收集的活动日志数据来执行审核,以帮助他们了解通过 XMLA 终结点连接的活动

有关可帮助你做出 Power BI 实施决策的其他有用方案,请参阅 Power BI 使用方案一文。