Power BI 使用方案:自助数据准备

备注

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

数据准备(有时称为 ETL,即“提取、转换和加载”的英文首字母缩写)通常涉及大量工作,具体取决于源数据的质量和结构。 自助数据准备使用方案侧重于数据准备活动对业务分析师的可重用性。 为实现这一可重用性目标,可将数据准备工作从 Power Query(在单个 Power BI Desktop 文件中)重新定位到 Power Query Online(使用 Power BI 数据流)。 逻辑集中化可帮助实现单一事实来源,并减少其他内容创建者所需的工作量。

数据流是使用多种工具之一中的 Power Query Online 创建的:Power BI 服务、Power Apps 或 Dynamics 365 Customer Insights。 在 Power BI 中创建的数据流称为分析数据流。 在 Power Apps 中创建的数据流可以是两种类型之一:标准或分析。 本方案仅介绍如何使用在 Power BI 服务中创建和管理的 Power BI 数据流。

注意

自助数据准备方案是自助 BI 方案中的一种。 有关自助方案的完整列表,请参阅 Power BI 使用方案一文。

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

方案示意图

下图简要概述了支持自助数据准备的最常见用户操作和 Power BI 组件。 重点介绍如何在 Power Query Online 中创建数据流,该数据流将成为多个语义模型(以前称为数据集)的数据源。 目标是让许多语义模型利用数据流完成的数据准备。

示意图显示了自助数据准备,涉及使用数据流来集中执行数据清理和转换工作。示意图中的项在下表中进行了介绍。

提示

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

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

项目 描述
项 1。 数据流创建者在 Power BI 数据流中开发一个表集合。 对于旨在供重复使用的数据流,创建者通常(但非必需)属于跨组织边界支持用户的集中式团队(例如 IT、企业 BI 或卓越中心)。
项 2。 数据流连接到一个或多个数据源中的数据。
项 3。 某些数据源(例如驻留在专用组织网络中的数据源)可能需要本地数据网关或 VNet 网关来进行数据刷新。 这些网关用于在 Power Query Online 中创作数据流(这是基于 Web 的 Power Query 版本)和刷新数据流。
项 4。 数据流是使用 Power Query Online 开发的。 借助 Power Query Online 中熟悉的 Power Query 界面,可以从 Power BI Desktop 轻松过渡。
项 5。 数据流在专门用于存储和保护数据流的工作区中作为项保存。 需要设置一个数据流刷新计划来使数据保持最新状态(方案图中未描绘)。
项 6。 数据流可以由内容创建者以及可以驻留在不同工作区中的其他语义模型重用作数据源。
项 7。 语义模型创建者可使用 Power BI Desktop 开发新的数据模型。 语义模型创建者可以在 Power BI Desktop 中使用 Power Query 的完整功能。 他们可以选择应用其他查询步骤,以进一步转换数据流数据或合并数据流输出。
项 8。 准备就绪后,语义模型创建者将包含数据模型的 Power BI Desktop 文件 (.pbix) 发布到 Power BI 服务。 语义模型的刷新与数据流分开管理(方案图中未描绘)。
项 9。 其他自助语义模型创建者可以使用数据流作为数据源在 Power BI Desktop 中创建新的数据模型。
项 10。 在管理门户中,Power BI 管理员可以设置 Azure 连接,以将数据流数据存储在其 Azure Data Lake Storage Gen2 (ADLS Gen2) 帐户中。 设置包括分配租户级存储帐户和启用工作区级存储权限。
项 11。 Power BI 管理员在管理门户中管理设置。
项 12。 默认情况下,数据流使用由 Power BI 服务管理的内部存储来存储数据。 (可选)可以在组织的 ADLS Gen2 帐户中存储数据流输出的数据。 这种类型的存储有时称作“自带数据湖”。 将数据流数据存储在数据湖中的一个好处是可以通过其他 BI 工具访问和使用这些数据。
项 13。 ADLS Gen2 中的数据流数据存储在称作“文件系统”的特定于 Power BI 的容器中。 在此容器中,每个工作区有一个文件夹。 将为每个数据流以及每个表创建一个子文件夹。 每次刷新数据流数据时,Power BI 都会生成一个快照。 快照是自述性的,包含元数据和数据文件。
项 14。 Azure 管理员管理组织的 ADLS Gen2 帐户的权限。
项 15。 Power BI 管理员监督和监视 Power BI 服务中的活动。

提示

我们建议你也查看高级数据准备使用方案。 它基于此方案中引入的概念。

要点

下面是对于自助数据准备方案需要强调的一些要点。

数据流

数据流包含表集合(也称为“实体”)。 创建数据流的所有工作都在 Power Query Online 中完成。 可以在多个产品中创建数据流,包括 Power Apps、Dynamics 365 Customer Insights 和 Power BI。

注意

无法在 Power BI 服务的个人工作区中创建数据流。

支持语义模型创建者

方案图描绘了如何使用 Power BI 数据流向其他自助语义模型创建者提供已准备好的数据。

注意

语义模型使用数据流作为数据源。 报表不能直接连接到数据流。

下面是使用 Power BI 数据流的一些优势:

  • 语义模型创建者可以使用他们熟悉的、与 Power BI Desktop 中相同的 Power Query 界面。
  • 数据流定义的数据准备和数据转换逻辑可以重用多次,因为它是集中式的。
  • 更改数据流的数据准备逻辑时,可能不需要更新相关的数据模型。 删除或重命名列或者更改列数据类型需要更新相关的数据模型。
  • Power BI 语义模型创建者可以轻松使用预先准备好的数据。 重用对于常用的表特别有用 — 尤其是维度表,例如日期、客户和产品。
  • 由于数据准备工作与数据建模工作是分离的,因此语义模型创建者所需的工作量将会减少
  • 更少的语义模型创建者需要直接访问源系统。 查询源系统可能比较复杂,并且可能需要专门的访问权限。
  • 在源系统上执行的刷新次数将会减少,因为语义模型刷新与数据流相关,而不与数据流从中提取数据的源系统相关。
  • 数据流数据代表时间快照,在由许多语义模型使用时可以提高一致性。
  • 将数据准备逻辑解耦到数据流可能有助于提高语义模型刷新成功率。 如果数据流刷新失败,语义模型将使用上次成功的数据流刷新设置来刷新。

提示

通过应用星型架构设计原则来创建数据流表。 星型架构设计非常适合用于创建 Power BI 语义模型。 此外,可以细化数据流输出以应用易记名称并使用特定的数据类型。 这些方法可以促进依赖语义模型中的一致性,并帮助减少语义模型创建者的工作量。

语义模型创建者灵活性

当语义模型创建者在 Power BI Desktop 中连接到数据流时,并非局限于使用确切的数据流输出。 他们仍可使用 Power Query 的完整功能。 如果需要完成额外的数据准备工作或者数据需要进一步转换,这些功能非常有用。

数据流高级功能

对于从自助式数据流转变为企业就绪数据流,有许多设计技术、模式和最佳做法可供参考。 许可模式设置为“Premium Per User”、“Premium Per Capacity”或“Fabric capacity”的工作区中的数据流可以受益于高级功能

重要

有时本文指的是 Power BI Premium 或其容量订阅 (P SKU)。 请注意,Microsoft 目前正在合并购买选项并停用 Power BI Premium Per Capacity SKU。 新客户和现有客户应考虑改为购买 Fabric 容量订阅 (F SKU)。

有关详细信息,请参阅 Power BI Premium 许可即将进行的重要更新Power BI Premium 常见问题解答

注意

其中一项高级功能是数据流的增量刷新。 尽管语义模型的增量刷新是 Power BI Pro 的一项功能,但数据流的增量刷新是一项高级功能

若要详细了解数据流高级功能,请参阅高级数据准备使用方案。

数据流和语义模型刷新

如前所述,数据流是语义模型的数据源。 在大多数情况下都会涉及多个数据刷新计划:一个计划用于数据流,一个计划用于每个语义模型。 或者,可以使用高级功能从语义模型到数据流的 DirectQuery(方案图中未描绘)。

Azure Data Lake Storage Gen2

在 Microsoft Azure 中,ADLS Gen2 帐户是启用了分层命名空间的特定类型的 Azure 存储帐户。 ADLS Gen2 在运行分析工作负载方面具有性能、管理和安全优势。 默认情况下,Power BI 数据流使用内部存储,该存储是 Power BI 服务管理的内置数据湖帐户。 组织可以选择性地通过连接到其组织的 ADLS Gen2 帐户来自带数据湖

下面是使用组织数据湖帐户的一些优势:

  • 其他用户或进程可以(选择性地)从数据湖访问 Power BI 数据流存储的数据。 在 Power BI 外部重用数据流时,这种做法很有帮助。 例如,数据可能由 Azure 数据工厂访问。
  • 数据湖中的数据可能(选择性地)由其他工具或系统管理。 在这种情况下,Power BI 可以使用数据,而无需管理数据(方案图中未描绘)。

租户级存储

管理员门户的“Azure 连接”部分包含一个用于配置 ADLS Gen2 帐户连接的设置。 配置此设置可以启用“自带数据湖”。 配置后,可将工作区设置为使用该数据湖帐户

重要

设置 Azure 连接并不意味着 Power BI 租户中的所有数据流默认都会存储在此帐户中。 若要使用显式存储帐户(而不是内部存储),必须专门连接每个工作区。

在工作区中创建任何数据流之前设置工作区的 Azure 连接至关重要。 同一 Azure 存储帐户用于 Power BI 语义模型备份

工作区级存储

Power BI 管理员可以配置某个设置,以允许工作区级存储权限(在管理员门户的“Azure 连接”部分)。 启用后,此设置将允许工作区管理员使用与在租户级别定义的存储帐户不同的存储帐户。 启用此设置对于在 Azure 中管理自身数据湖的分散式业务部门而言特别有帮助。

注意

管理门户中的工作区级存储权限适用于 Power BI 租户中的所有工作区。

Common Data Model 格式

ADLS Gen2 帐户中的数据存储在 Common Data Model (CDM) 结构中。 CDM 结构是一种元数据格式,规定了自述性架构以及数据的存储方式。 CDM 结构以一种可在大量应用程序之间共享数据的标准化格式实现语义一致性,(方案图中未描绘)。

发布到不同的工作区

将数据流发布到不同于相关语义模型存储位置的工作区可以带来诸多优势。 其中一项优势是明确地知道谁负责管理哪些类型的内容(如果由不同的人员承担不同的职责)。 另一项优势是可为每种类型的内容分配特定的工作区权限。

注意

无法在 Power BI 服务的个人工作区中创建数据流。

高级数据准备使用方案介绍了如何设置多个工作区,以在支持企业级自助服务创建者时提供更好的灵活性。

网关设置

通常,需要本地数据网关来连接到位于专用组织网络或虚拟网络中的数据源。

在以下情况下需要数据网关:

  • 在 Power Query Online 中创作连接到专用组织数据的数据流。
  • 刷新连接到专用组织数据的数据流。

提示

数据流需要采用标准模式的集中式数据网关。 处理数据流时,不支持采用个人模式的网关。

系统监督

活动日志记录 Power BI 服务中发生的用户活动。 Power BI 管理员可以使用收集的活动日志数据来执行审核,以帮助他们了解使用模式和采用情况。 在支持治理工作、安全审核和合规性要求方面,活动日志也很有作用。 对于自助数据准备方案,跟踪数据流的使用情况特别有帮助。

在本系列的下一篇文章中,了解高级数据准备使用方案。