Azure 数据工厂和 Azure Synapse Analytics 中的链接服务
适用于:Azure 数据工厂 Azure Synapse Analytics
本文介绍了链接服务的涵义、采用 JSON 格式定义链接服务的方式,以及链接服务在 Azure 数据工厂和 Azure Synapse Analytics 中的用法。
有关详细信息,请阅读 Azure 数据工厂或 Azure Synapse 的简介文章。
概述
Azure 数据工厂和 Azure Synapse Analytics 可以有一个或多个管道。 “管道”是共同执行一项任务的活动的逻辑分组。 管道中的活动定义对数据执行的操作。 例如,可使用复制活动将数据从 SQL Server 复制到 Azure Blob 存储。 然后,可使用在 Azure HDInsight 群集上运行 Hive 脚本的 Hive 活动,将 Blob 存储中的数据处理为生成输出数据。 最后,可再使用一个复制活动将输出数据复制到 Azure Synapse Analytics,在此基础上构建商业智能 (BI) 报告解决方案。 有关管道和活动的详细信息,请参阅管道和活动。
现在,数据集这一名称的意义已经变为看待数据的一种方式,就是以输入和输出的形式指向或引用活动中要使用的数据。
在创建数据集之前,必须创建链接服务以将你的数据存储链接到数据工厂或 Synapse 工作区。 链接的服务类似于连接字符串,它定义服务连接到外部资源时所需的连接信息。 不妨这样考虑:数据集代表链接的数据存储中的数据结构,而链接服务则定义到数据源的连接。 例如,Azure 存储链接服务可将存储帐户链接到该服务。 Azure Blob 数据集表示该 Azure 存储帐户中包含要处理的输入 Blob 的 Blob 容器和文件夹。
下面是一个示例方案。 要将数据从 Blob 存储复制到 SQL 数据库,请创建以下两个链接服务:Azure 存储和 Azure SQL 数据库。 然后创建两个数据集:Azure Blob 数据集(即 Azure 存储链接服务)和 Azure SQL 表数据集(即 Azure SQL 数据库链接服务)。 Azure 存储和 Azure SQL 数据库链接服务分别包含服务在运行时用于连接到 Azure 存储和 Azure SQL 数据库的连接字符串。 Azure Blob 数据集指定 blob 容器和 blob 文件夹,该文件夹包含 Blob 存储中的输入 blob。 Azure SQL 表数据集指定你的 SQL 数据库中要将数据复制到其中的 SQL 表。
下图显示了该服务中管道、活动、数据集和链接服务之间的关系:
包含 UI 的链接服务
若要在 Azure Data Factory Studio 中创建新的链接服务,请选择“管理”选项卡,然后选择“链接服务”,可以在其中查看你定义的任何现有链接服务。 选择“+ 新建”以创建新的链接服务。
选择“+ 新建”以创建新的链接服务后,可以选择任何受支持的连接器并相应地配置其详细信息。 此后,你可以在你创建的任何管道中使用链接服务。
链接服务 JSON
链接服务采用 JSON 格式定义,如下所示:
{
"name": "<Name of the linked service>",
"properties": {
"type": "<Type of the linked service>",
"typeProperties": {
"<data store or compute-specific type properties>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
下表描述了上述 JSON 中的属性:
属性 | 描述 | 必需 |
---|---|---|
name | 链接服务的名称。 请参见命名规则。 | 是 |
type | 链接服务的类型。 例如:AzureBlobStorage(数据存储)或 AzureBatch(计算)。 请参阅 typeProperties 说明。 | 是 |
typeProperties | 每个数据存储或计算的类型属性各不相同。 有关支持的数据存储类型及其类型属性,请参阅连接器概述一文。 导航到数据存储连接器一文,了解特定于数据存储的类型属性。 有关支持的计算类型及其类型属性,请参阅计算链接服务。 |
是 |
connectVia | 用于连接到数据存储的集成运行时。 如果数据存储位于专用网络,则可以使用 Azure 集成运行时或自承载集成运行时。 如果未指定,则使用默认 Azure Integration Runtime。 | 否 |
链接服务示例
以下链接服务是 Azure Blob 存储链接服务。 请注意,类型设置为“Azure Blob 存储”。 Azure Blob 存储链接服务的类型属性包含连接字符串。 该服务使用此连接字符串在运行时连接到数据存储。
{
"name": "AzureBlobStorageLinkedService",
"properties": {
"type": "AzureBlobStorage",
"typeProperties": {
"connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountname>;AccountKey=<accountkey>;EndpointSuffix=core.chinacloudapi.cn"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
创建链接服务
在 Azure 数据工厂 UX 中通过管理中心以及引用链接服务的任何活动、数据集或数据流创建链接服务。
你可以使用以下任一工具或 SDK 创建链接服务:.NET API、PowerShell、REST API、Azure 资源管理器模板和 Azure 门户。
创建链接服务时,用户需要对指定服务进行适当的授权。 如果未授予足够的访问权限,用户无法查看可用资源,并且需要使用手动输入选项。
数据存储链接的服务
有关支持的数据存储列表,可参阅连接器概述一文。 选择数据存储可了解支持的连接属性。
计算链接服务
要详细了解不同的配置以及可从服务连接到的不同的计算环境,请参阅支持的计算环境。
相关内容
请参阅以下教程,了解使用下列某个工具或 SDK 创建管道和数据集的分步说明。