使用 Azure Synapse Link 将 Microsoft Dataverse 数据连接到 Azure Synapse Analytics,以浏览数据并加快见解时间。 本文介绍如何运行 Azure Synapse 管道或 Azure 数据工厂,将数据从 Azure Data Lake Storage Gen2 复制到 Azure SQL 数据库,并在 Azure Synapse Link 中启用了增量更新功能。
注释
Azure Synapse Link for Microsoft Dataverse 以前称为“导出到数据湖”。 此服务已更名,从 2021 年 5 月起生效,它会继续将数据导出到 Azure Data Lake 以及 Azure Synapse Analytics。 此模板是一个代码示例。 建议使用此模板作为指导,以测试使用提供的管道将数据从 Azure Data Lake Storage Gen2 检索到 Azure SQL 数据库的功能。
先决条件
- Azure Synapse Link for Dataverse。 本指南假定你已满足使用 Azure Data Lake 创建 Azure Synapse Link 的先决条件。 更多信息:Azure Data Lake 与 Dataverse 的 Azure Synapse Link 先决条件
- 在与 Power Apps 租户相同的Microsoft Entra 租户下创建 Azure Synapse 工作区或 Azure 数据工厂。
- 创建启用增量文件夹更新的 Azure Synapse Link for Dataverse 以设置时间间隔。 详细信息: 查询和分析增量更新
- 需要为触发器注册 Microsoft.EventGrid 提供程序。 详细信息: Azure 门户。 注意:如果在 Azure Synapse Analytics 中使用此功能,请确保订阅也注册到数据工厂资源提供程序,否则会收到一个错误,指出创建“事件订阅”失败。
- 创建一个启用 允许 Azure 服务和资源访问此服务器 属性的 Azure SQL 数据库。 详细信息: 设置 Azure SQL 数据库(PaaS)时应知道哪些信息?
- 创建和配置 Azure 集成运行时。 详细信息: 创建 Azure 集成运行时 - Azure 数据工厂和 Azure Synapse
重要
使用此模板可能会产生额外的费用。 这些成本与 Azure 数据工厂或 Synapse 工作区管道的使用相关,并按月计费。 使用管道的成本主要取决于增量更新的时间间隔和数据量。 若要规划和管理使用此功能的成本,请转到: 使用成本分析监视管道级别的成本
在决定使用此模板时,请务必考虑这些额外的成本,因为它们不是可选的,必须付费才能继续使用此功能。
使用解决方案模板
- Synapse Analytics
- Azure 数据工厂
- 转到 Azure 门户 并打开 Azure Synapse 工作区。
- 选择 集成>浏览图库。
- 从集成库中选择使用 Synapse Link 将 Dataverse 数据复制到 Azure SQL。
配置解决方案模板
创建到 Azure Data Lake Storage Gen2 的链接服务,该服务使用适当的身份验证类型连接到 Dataverse。 为此,请选择 “测试连接”以验证连接性, 然后选择“ 创建”。
与前面的步骤类似,创建一个链接到 Azure SQL 数据库的链接服务,其中 Dataverse 数据将同步。
现在,可以添加触发器来自动执行此管道,以便管道在定期完成增量更新时始终可以处理文件。 转到 “管理>触发器”,使用以下属性创建触发器:
- 名称:输入触发器的名称,例如 triggerModelJson。
- 类型: 存储事件。
- Azure 订阅:选择具有 Azure Data Lake Storage Gen2 的订阅。
- 存储帐户名称:选择具有 Dataverse 数据的存储。
- 容器名称:选择 Azure Synapse Link 创建的容器。
- Blob 路径以/model.json 结尾
- 事件: 已创建 Blob。
- 忽略空 Blob: 是。
- 启动触发器: 在创建时启用启动触发器。
选择 “继续 ”转到下一个屏幕。
在下一个屏幕上,触发器将验证匹配的文件。 选择 “确定 ”以创建触发器。
在前面的步骤中选择触发器,然后选择 “继续 ”转到下一个屏幕,其中触发器验证匹配的文件。
选择 “继续 ”转到下一个屏幕。
在 “触发器运行参数 ”部分中,输入以下参数,然后选择“ 确定”。
-
容器:
@split(triggerBody().folderPath,'/')[0] -
文件夹:
@split(triggerBody().folderPath,'/')[1]
-
容器:
将触发器与管道关联后,选择“ 全部验证”。
选择 “发布” 以发布所有更改。
添加事件订阅筛选器
若要确保仅在 model.json 创建完成时启动触发器,需要为触发器的事件订阅更新高级筛选器。 第一次运行触发器时,将事件注册到存储帐户。
触发器运行完成后,转到存储帐户 >事件>事件订阅。
选择为 model.json 触发器注册的事件。
选择“ 筛选器 ”选项卡,然后选择“ 添加新筛选器”。
创建筛选器:
- 键: 主题
- 运算符: 字符串不以...结束
- 值: /blobs/model.json
从 data.api值数组中删除 CopyBlob 参数。
选择 “保存” 以部署其他筛选器。