本教程介绍如何在 Microsoft Fabric 管道中使用动态内容。 创建变量库项并向其添加变量时,可以为部署管道的各个阶段自动执行值。 在本教程中,将数据从一个 Lakehouse 复制到另一个 Lakehouse。 然后使用变量库设置复制活动的源值和目标值。
在本教程中,你将:
- 创建变量库。
- 将变量添加到库。
- 为变量定义其他值集。
- 使用工作区(管道)中另一项中的变量。
- 编辑 Git 存储库中的变量。
- 创建部署管道并部署变量库。
- 更改部署管道的目标阶段中设置的活动值。
- 显示变量的值符合每个阶段中设置的活动值。
下图显示了本教程的工作区布局。
先决条件
具有有效订阅的 Fabric 租户帐户。 免费创建帐户。
从管理门户启用的以下 租户切换 :
- 用户可以创建 Fabric 项
- 用户可以创建变量库
租户管理员、容量管理员或工作区管理员可以根据 组织的设置启用这些开关。
创建 Stage LHs 工作区,使用示例数据SourceLH_Stage lakehouse,以及Pipeline_Stage管道
首先,创建一个工作区和 Lakehouse 以用作初始暂存数据:
使用“变量”工作区创建源 LHs
现在,创建一个工作区,用于变量库并使用它:
创建SourceLH_Dev、SourceLH_Test和SourceLH_Prod湖屋
接下来,创建用于变量库的三个 Lakehouse:
创建第一个 Lakehouse:
在边栏上,选择 “变量”工作区的源 LHs 。
选择“新建项”。
在 “存储数据”下,选择 Lakehouse。
输入 名称SourceLH_Dev,然后选择“ 创建”。
按照前面的步骤创建第二个 Lakehouse。 将其命名为SourceLH_Test。
按照前面的步骤创建第三个 Lakehouse。 将其命名为SourceLH_Prod。
在边栏上,选择 “变量”工作区的源 LHs ,并确保它包含所有新建的 Lakehouse。
获取 lakehouses 的工作区 ID 和对象 ID
在这些步骤中,你将获取要在变量库中使用的唯一标识符:
在 Power BI 的边栏中,选择 “阶段 LHs ”工作区。
在工作区中,选择 SourceLH_Stage lakehouse。
复制 URL 中的工作区 ID 和 Lakehouse 对象 ID。
对源 LHs 中的“变量”工作区中的SourceLH_Dev和SourceLH_Test lakehouse 重复上述步骤。
使用变量创建变量库
现在,创建变量库:
在 “包含变量”工作区的源 LHs 中,选择“ 新建”项。
在 “开发数据”下,选择“变量库”。
将库命名 为 WS 变量,然后选择“ 创建”。
选择 “新建变量”。
创建以下变量:
名称 类型 默认值集 Source_LH字符串 <SourceLH_Stage湖屋的 GUID> Source_WSID字符串 <SourceLH_Stage工作区的 GUID> Destination_LH字符串 <SourceLH_Dev lakehouse 的 GUID> Destination_WSID字符串 <SourceLH_Dev 工作区的 GUID> SourceTable_Name字符串 ProcessedDestinationTable_Name字符串 DevCopiedData选择“保存”。
创建备用值集
在以下步骤中,将备用值集添加到变量库:
创建第一个值集:
在 WS 变量 库中,选择“ 添加值集”。
输入 测试 VS 以获取名称,然后选择“ 创建”。
创建以下变量:
名称 类型 默认值集 Source_LH字符串 <SourceLH_Dev lakehouse 的 GUID> Source_WSID字符串 <SourceLH_Dev 工作区的 GUID> Destination_LH字符串 <SourceLH_Test lakehouse 的 GUID> Destination_WSID字符串 <SourceLH_Test 工作区的 GUID> SourceTable_Name字符串 DevCopiedDataDestinationTable_Name字符串 TestCopiedData选择“ 保存>同意”。
创建第二个值集:
选择 “添加值集”。
输入 Prod VS 以获取名称,然后选择“ 创建”。
创建以下变量:
名称 类型 默认值集 Source_LH字符串 <SourceLH_Test lakehouse 的 GUID> Source_WSID字符串 <SourceLH_Test 工作区的 GUID> Destination_LH字符串 <SourceLH_Prod湖屋的 GUID> Destination_WSID字符串 <SourceLH_Prod工作区的 GUID> SourceTable_Name字符串 TestCopiedDataDestinationTable_Name字符串 ProdCopiedData选择“ 保存>同意”。
创建Pipeline_Deploy管道并声明变量
在这些步骤中,将创建管道并声明变量:
在 “包含变量”工作区的源 LHs 中,选择“ 新建”项。
在“ 获取数据”下,选择 “管道”。
输入名称 Pipeline_Deploy,然后选择“ 创建”。
选择“ 复制数据>添加到画布”。
选择画布,使焦点关闭 “复制数据”。
选择 **库变量**。
选择“ 新建”,然后添加以下变量:
名称 图书馆 变量名称 类型 SourceLHWS 变量 Source_LH字符串 SourceWSIDWS 变量 Source_WSID字符串 DestinationLHWS 变量 Destination_LH字符串 DestinationWSIDWS 变量 Destination_WSID字符串 SourceTableNameWS 变量 SourceTable_Name字符串 DestinationTableNameWS 变量 DestinationTable_Name字符串 选择“保存”。
配置Pipeline_Deploy管道的源连接
在以下步骤中,为管道配置源连接:
在 “带变量”工作区的源 LHs 中,转到 Pipeline_Deploy。
在画布上,选择“ 复制数据 ”,使焦点位于 “复制数据”上。
选择 “源”。
配置 SourceLH:
配置 SourceWSID:
配置 SourceTableName:
设置源连接后,可以对其进行测试。 选择 “预览数据”,然后在浮出控件上选择“ 确定 ”。 填充数据后,可以关闭数据预览。
配置Pipeline_Deploy管道的目标连接
在以下步骤中,为管道配置目标连接:
在 “带变量”工作区的源 LHs 中,转到 Pipeline_Deploy。
在画布上,选择“ 复制数据 ”,使焦点位于 “复制数据”上。
选择 “目标”。
配置 SourceLH:
配置 DestinationWSID:
配置 DestinationTableName:
设置目标连接后,保存管道并选择“ 运行”。 确认它已成功运行。
创建部署管道
现在,创建部署管道:
在 “包含变量”工作区的源 LHs 中,选择“ 创建部署管道”。
将管道 命名为Deployment_Pipeline_Var,然后选择“ 下一步”。
在部署管道中,选择“ 创建并继续”。
对于 开发 阶段:
对于 测试 阶段:
对于 生产 阶段:
为每个阶段设置变量库的活动集
在这些步骤中,为部署管道中的每个阶段配置活动集:
为 测试 阶段配置活动集:
为 Prod 阶段配置活动集:
在边栏上,选择 Deployment_Pipeline_Var 管道。
选择 Prod 阶段。
选择 WS 变量。
选择省略号(...),然后选择“ 设置为活动”。 选择“ 设置为活动 ”按钮。
选择“ 保存>同意”。
验证并测试变量库
设置变量库并为部署管道的每个阶段配置所有活动集后,可以验证它们:
检查 SourceLHs_Dev 湖屋:
切换到 SourceLHs_Test lakehouse 并重复上述步骤。
TestCopiedData 表不应显示,因为尚未运行测试 VS 活动集的管道。
切换到 SourceLHs_Prod lakehouse 并重复上述步骤。
ProdCopiedData 表不应显示,因为尚未使用 Prod VS 活动集运行管道。
检查Deployment_Pipeline_Var管道的测试阶段:
切换到 Deployment_Pipeline_Var 管道并选择 “测试 ”阶段。
选择 Pipeline_Deploy 管道。
选择“ 运行”。 此过程应成功完成。
再次检查 SourceLHs_Test 湖屋:
检查Deployment_Pipeline_Var管道的生产阶段:
切换到 Deployment_Pipeline_Var 管道并选择 “生产 ”阶段。
选择 Pipeline_Deploy 管道。
选择“ 运行”。 此过程应成功完成。
再次检查 SourceLHs_Prod 湖屋:
切换到 SourceLHs_Prod 湖屋。
将连接从 Lakehouse 更改为 SQL 分析终结点。
在资源管理器中,展开 Schemas>dbo>表。
确认 显示 ProdCopiedData 表。
自定义 Git 中的变量值(可选)
若要查看 变量库在 Git 中的表示方式,或从 Git 存储库编辑变量:
在工作区中,选择“源代码管理”并将工作区连接到 Git 存储库。
在 “源代码管理 ”窗格中,选择“ 提交 ”将工作区内容推送到 Git 存储库。
Git 存储库包含工作区中每个项的文件夹。 名为 WS 变量的文件夹。VariableLibrary 表示变量库项。 有关此文件夹内容的详细信息,请参阅 变量库 CI/CD。
比较 valueSets 文件夹中的ProdVS.json 和 TestVS.json 文件。 确认变量
overrides已设置为不同的值。 可以直接在 UI 中编辑这些值,也可以在 Git 中编辑此文件并将其更新到工作区。{ "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/VariablesLibrary/definition/valueSets/1.0.0/schema.json", "valueSetName": "Test VS", "overrides": [ { "name": "Source_LH", "value": "4fe228d3-a363-4b7f-a5d4-fae9d2abca43" }, { "name": "DestinationTableName", "value": "TestCopiedData" } ] }{ "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/VariablesLibrary/definition/valueSets/1.0.0/schema.json", "valueSetName": "Prod VS", "overrides": [ { "name": "Source_LH", "value": "c0f13027-9bf4-4e8c-8f57-ec5c18c8656b" }, { "name": "DestinationTableName", "value": "ProdCopiedData" } ] }