提供开发生命周期策略建议

已完成

开发过程是一个迭代的过程;它通常需要生成初始解决方案、在不同的环境中测试解决方案、返回并进行必要修订,以及最后发布最终产品。 此过程称为开发生命周期。 可通过多种不同方式完成此过程,而且可在不同的环境中完成此过程。

本模块继续采用之前的场景,假设 Tailwind Traders 的销售团队对你所交付的报表印象深刻,随着他们继续利用 Power BI 的功能,他们还希望在不放缓开发日程表的情况下保持数据和报表的完整性。 因此,他们要求你创建一个开发管道,以便所有团队都使用该管道来开发报表和仪表板。 Power BI 提供了部署管道,可用于帮助加速开发并最大程度地减少错误。

部署管道(高级)

Power BI 的部署管道功能可用于在开发生命周期中管理不同环境之间的仪表板、报表和语义模型中的内容。 使用此功能,可在一个集中位置开发和测试 Power BI 内容,并在将最终内容部署到用户前精简流程。 此 Power BI Premium 功能要求你具有容量管理员身份。

使用部署管道的优点包括:

  • 提高工作效率 -通过此功能,可以重复使用之前的部署管道,从而确保工作不会重复。

  • 加快内容交付速度 - 报表开发变得更加简单,这意味着投入生产所需的时间更少。

  • 减少所需的人工干预 - 通过重复使用部署管道的能力,可降低与将内容从一个环境移到另一个环境相关的出错几率。

开发环境

通常,开发和协作在不同的阶段进行。 报表和仪表板在一系列受控阶段(又称为环境)中生成和迭代,在此阶段会执行多个任务:

  • 开发 - 仪表板开发人员或语义建模人员可以与其他开发人员一起生成新内容的位置。 此阶段是部署管道的第一阶段。

  • 测试 - 一小组用户和用户验收测试人员可以在新报表进入生产阶段之前查看和检查新报表、提供反馈并使用较大的语义模型测试报表是否存在 bug 和数据不一致问题。

  • 生产 - 广泛的用户受众可以在其中使用准确可靠且经过测试的报表。 此阶段是部署管道的最后一个阶段。

你可以根据业务需求选择要在部署管道中包括的其中某个开发环境。 例如,可以在需要时选择仅包括测试和生产环境。

配置部署管道

假设要为 Tailwind Traders 创建部署管道。 要配置部署管道,请转到 Power BI 服务,然后执行以下步骤:

  1. 在页面左侧的功能区上,选择“部署管道”,如以下屏幕截图所示。

功能区上“部署管道”功能的屏幕截图。

  1. 在显示的页面上,选择“创建管道”。

  2. 创建名为“SalesPipeline”的部署管道。 在“管道名称”中输入“SalesPipeline”,并根据需要输入描述。

  3. 选择“创建”,这将使你转到以下屏幕。

“部署管道”页的屏幕截图。

此视图显示开发生命周期的步骤:“开发”、“测试”和“生产”。

  1. 要创建管道,请为其中每个阶段分配工作区,以便每个阶段都可以在其中存放报表和仪表板。

  2. 选择“分配工作区”以开始。

  3. 你将被定向到“将工作区分配到部署阶段”窗口,你可以在其中将“Tailwind Traders”工作区添加到“开发”环境。

“分配工作区”页面的屏幕截图,其中显示了“分配”和“分配工作区”按钮。

只会显示分配给高级容量的工作区。 此外,只能为每个管道分配一个工作区。 Power BI 将自动生成在管道中使用的两个其他工作区。

  1. 如果已有“开发”、“测试”和“生产”工作区,请选择要使用的工作区,然后选择“分配”。

如果此步骤成功,应看到以下视图。

“开发步骤成功”视图的屏幕截图。

上图显示在当前“开发”环境中拥有的语义模型、报表和仪表板的数量。 在每个阶段,都可以通过选择“发布应用”来选择将关联的工作区作为应用发布。

  1. 要查看构成工作区的所有对象,请选择“显示更多”。

测试阶段

与团队协作并生成可供测试的报表后,即可继续进行测试阶段。 选择“部署到测试”,这将创建一个新的工作区。 默认情况下,此工作区与初始工作区的名称相同,但后缀为 [Test]。 可以通过在部署管道界面中输入工作区的设置来更改名称。

测试应该模拟对象在为用户进行部署后将遇到的情况。 因此,Power BI 允许在测试期间更改使用的数据源。 要完成此任务,首先需要通过选择闪电图标来输入环境的部署设置,如以下屏幕截图所示。

用于访问部署设置的闪电图标的屏幕截图。

在显示的“设置”窗口中,选择正确的语义模型。 在此示例中,我们希望将“OrdersFigures”语义模型用于测试,但要使用其他数据源。 要完成此任务,请在 Power Query 参数中创建参数(这将在后面的模块中进行讨论),或者添加一个新规则,此示例使用后者。 在“数据源规则”下拉菜单中,选择“+ 添加规则”。

“数据源规则”窗口的屏幕截图。

在“数据源规则”部分中,可以将开发中使用的数据源更改为用于测试报表的新源(在下面的示例中为“orders.csv”)。 完成后,选择卡底部的“保存”。

更改数据源规则的详细信息的屏幕截图。

生产阶段

现在,你即将完成从开发过渡到测试并最终过渡到生产的管道。 在此阶段,我们需要为工作区中的“OrdersFigures”语义模型创建数据源规则,以确保使用生产数据。 在此实例中,我们将源从测试文件夹中的 orders.csv 文件更改为生产文件夹中的版本,如以下屏幕截图所示。

在生产环境中更改的源的屏幕截图。

执行语义模型刷新后,生产工作区将准备就绪。 可以将工作区打包为应用,以供用户使用。 现在,部署管道将如下图所示。

部署管道已完成的屏幕截图。

你已成功创建了从开发阶段到测试阶段的部署管道。 以下部分介绍了可以在开发管道中执行的其他操作。

开发管道中的其他操作

你已创建了部署管道,并已开始与其他报表开发人员进行协作。 你收到另一个开发人员已修改报表的通知。 要查看对此报表所做的更改,请选择“比较”按钮,如以下屏幕截图所示。

部署管道上的比较工具的屏幕截图。

选择“比较”可显示“OrdersFigures”报表在开发环境和测试环境之间的差异。

比较在开发和测试环境之间的差异的屏幕截图。

差异通常表现为添加或删除的对象。 如果决定不应将更改部署到下一阶段,则可以选择忽略更改。 例如,另一个开发人员在开发环境中添加了名为“AdditionalOrderInfo”的报表,但你不想部署这些更改。 通过选择特定报表并选择“部署到测试阶段”,可以有效地选择要从一个环境移到另一个环境的报表,如下图所示。

要部署的迭代列表的屏幕截图。

如下面的消息所示,仅执行一项更改。

“将替换内容”消息的屏幕截图,其中包含“继续”按钮。

请谨慎使用此工具。 报表依赖于其语义模型。 如果语义模型已更改,但你未将其与关联报表一起部署,则报表将无法正常运行。

我们建议在 Power BI 服务中使用部署管道。 此工具可以确保简化开发生命周期,还可确保能够创建集中位置用于进行协作、跟踪和部署报表。

有关详细信息,请参阅部署管道最佳做法