您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.
教程:使用 Azure Data Share 共享数据
03/24/2021
本文内容
本教程介绍如何设置新的 Azure Data Share,然后开始与 Azure 组织外部的客户和合作伙伴共享数据。
本教程介绍以下操作:
创建 Data Share。
向 Data Share 添加数据集。
为 Data Share 启用快照计划。
将接收人添加到 Data Share。
先决条件
Azure 订阅:如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
收件人的 Azure 登录电子邮件地址(使用其电子邮件别名将无效)。
如果源 Azure 数据存储位于与你将用于创建 Data Share 资源的 Azure 订阅不同的 Azure 订阅中,请在 Azure 数据存储所在的订阅中注册 Microsoft.DataShare 资源提供程序。
从存储帐户共享
一个 Azure 存储帐户:如果没有,可以创建一个 Azure 存储帐户
向存储帐户进行写入的权限,此权限位于 Microsoft.Storage/storageAccounts/write 中。 “参与者”角色有此权限。
向存储帐户添加角色分配的权限,此权限存在于 Microsoft.Authorization/role assignments/write 中。 “所有者”角色有此权限。
从基于 SQL 的源共享
下面是从 SQL 源共享数据的先决条件列表。
从 Azure SQL 数据库或 Azure Synapse Analytics(以前称为 Azure SQL DW)共享的先决条件
包含要共享的表和视图的 Azure SQL 数据库或 Azure Synapse Analytics(以前称为 Azure SQL DW)。
向 SQL 服务器上的数据库进行写入的权限,此权限存在于 Microsoft.Sql/servers/databases/write 中。 “参与者”角色有此权限。
SQL 服务器的 Azure Active Directory 管理员
SQL Server 防火墙访问权限。 可以通过以下步骤完成此操作:
在 Azure 门户中导航到“SQL Server”。 从左侧导航栏中选择“防火墙和虚拟网络”。
对于“允许 Azure 服务和资源访问此服务器”,单击“是”。
单击“+ 添加客户端 IP”。 客户端 IP 地址可能会更改。 下次从 Azure 门户共享 SQL 数据时,可能需要重复此过程。 还可以添加 IP 范围。
单击“ 保存”。
从 Azure Synapse Analytics(工作区)SQL 池共享的先决条件
包含要共享的表的 Azure Synapse Analytics(工作区)专用 SQL 池。 目前不支持共享视图。 目前不支持从无服务器 SQL 池共享。
在 Synapse 工作区中写入 SQL 池的权限,该权限位于 Microsoft.Synapse/workspaces/sqlPools/write。 “参与者”角色有此权限。
Data Share 资源托管标识访问 Synapse 工作区 SQL 池的权限。 可以通过以下步骤完成此操作:
在 Azure 门户中导航到 Synapse 工作区。 从左侧导航栏中选择“SQL Active Directory 管理员”,并将你自己设置为“Azure Active Directory 管理员”。
打开 Synapse Studio,从左侧导航栏中选择“管理”。 在“安全性”下选择“访问控制”。 为自己分配“SQL 管理员”或“工作区管理员”角色 。
在 Synapse Studio 中,从左侧导航栏中选择“开发”。 在 SQL 池中执行以下脚本,以将 Data Share 资源托管标识添加为 db_datareader。
create user "" from external provider;
exec sp_addrolemember db_datareader, "";
请注意, 是 Data Share 资源的名称。 如果尚未创建 Data Share 资源,则可以稍后返回到该先决条件。
Synapse 工作区防火墙访问权限。 可以通过以下步骤完成此操作:
在 Azure 门户中导航到 Synapse 工作区。 从左侧导航栏中选择“防火墙”。
对于“允许 Azure 服务和资源访问此工作区”,单击“启用”。
单击“+ 添加客户端 IP”。 客户端 IP 地址可能会更改。 下次从 Azure 门户共享 SQL 数据时,可能需要重复此过程。 还可以添加 IP 范围。
单击“ 保存”。
从 Azure 数据资源管理器进行共享
Azure 数据资源管理器群集,其中包含要共享的数据库。
向 Azure 数据资源管理器群集进行写入的权限,此权限存在于 Microsoft.Kusto/clusters/write 中。 “参与者”角色有此权限。
登录到 Azure 门户
创建 Data Share 帐户
在 Azure 资源组中创建 Azure Data Share 资源。
选择门户左上角的菜单按钮,然后选择“创建资源”(+)。
搜索“Data Share”。
选择“Data Share”,然后选择“创建” 。
根据以下信息填写 Azure Data Share 资源的基本详细信息。
设置
建议的值
字段说明
订阅
你的订阅
选择要用于 Data Share 帐户的 Azure 订阅。
资源组
testresourcegroup
使用现有资源组或创建新资源组。
位置
美国东部 2
选择 Data Share 帐户的区域。
名称
datashareaccount
指定 Data Share 帐户的名称。
选择“审阅 + 创建”,然后选择“创建”来预配数据共享帐户 。 预配新的 Data Share 帐户通常需要大约 2 分钟或更少的时间。
部署完成后,选择“转到资源”。
在 Azure 资源组中创建 Azure Data Share 资源。
首先为 Azure CLI 准备环境:
如果需要,请安装 Azure CLI 来运行 CLI 参考命令。
如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅登录 Azure CLI。
出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展详细信息,请参阅使用 Azure CLI 的扩展。
运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade。
使用以下命令创建资源:
使用 az account set 命令将订阅设置为当前默认订阅:
az account set --subscription 00000000-0000-0000-0000-000000000000
az provider register --name "Microsoft.DataShare"
运行 az group create 命令创建资源组或使用现有资源组:
az group create --name testresourcegroup --location "East US 2"
az datashare account create --resource-group testresourcegroup --name datashareaccount --location "East US 2"
az datashare account list --resource-group testresourcegroup
创建共享
导航到 Data Share 概览页。
选择“开始共享数据” 。
选择“创建” 。
填写共享的详细信息。 指定名称、共享类型、共享内容说明以及使用条款(可选)。
选择“继续”。
若要向共享添加数据集,请选择“添加数据集”。
选择要添加的数据集类型。 你将会看到一个不同的数据集类型列表,具体取决于你在上一步中选择的共享类型(快照或就地)。 如果从 Azure SQL 数据库或 Azure Synapse Analytics(以前称为 Azure SQL DW)进行共享,系统会提示你选择身份验证方法以列出表。 选择“AAD 身份验证”,然后选中“允许‘数据共享’以我的名义运行上述‘创建用户’脚本”复选框。
导航到要共享的对象,选择“添加数据集”。
在“接收者”选项卡中,选择“+ 添加接收者”,输入数据使用者的电子邮件地址。
选择“继续”。
如果已选择了快照共享类型,则可以配置快照计划来向数据使用者提供数据更新。
选择开始时间和重复周期间隔。
选择“继续”。
在“查看 + 创建”选项卡中查看包内容、设置、接收者和同步设置。 选择“创建”。
az storage account create --resource-group testresourcegroup --name ContosoMarketplaceAccount
使用 az storage container create 命令为上一命令中的 Data Share 创建一个容器:
az storage container create --name ContosoMarketplaceContainer --account-name ContosoMarketplaceAccount
az datashare create --resource-group testresourcegroup \
--name ContosoMarketplaceDataShare --account-name ContosoMarketplaceAccount \
--description "Data Share" --share-kind "CopyBased" --terms "Confidential"
az datashare invitation create --resource-group testresourcegroup \
--name DataShareInvite --share-name ContosoMarketplaceDataShare \
--account-name ContosoMarketplaceAccount --target-email "jacob@fabrikam"
你的 Azure Data Share 现已创建,Data Share 的接收者现已准备好接受你的邀请。
清理资源
当不再需要该资源时,转到“数据共享概述”页面并选择“删除”将其删除 。
后续步骤
本教程介绍了如何创建 Azure Data Share 并邀请接收者。 若要了解数据使用者如何接受和接收数据共享,请继续学习接受和接收数据教程。