Azure 数据工厂中的链接服务

适用于: Azure 数据工厂

本文介绍了链接服务的定义,如何以 JSON 格式定义链接服务,以及链接服务在 Azure 数据工厂中的用法。

要了解更多信息,请阅读有关 Azure 数据工厂的介绍性文章。

概述

Azure 数据工厂可以包含一个或多个管道。 “管道”是共同执行一项任务的活动的逻辑分组。 管道中的活动定义对数据执行的操作。 例如,可使用复制活动将数据从 SQL Server 复制到 Azure Blob 存储。 然后,可使用在 Azure HDInsight 群集上运行 Hive 脚本的 Hive 活动,将 Blob 存储中的数据处理为生成输出数据。 最后,可再使用一个复制活动将输出数据复制到 Azure Synapse Analytics,在此基础上构建商业智能 (BI) 报告解决方案。 有关管道和活动的详细信息,请参阅管道和活动

现在,数据集这一名称的意义已经变为看待数据的一种方式,就是以输入和输出的形式指向或引用活动中要使用的数据 。

创建数据集之前,必须创建“链接服务”,将数据存储链接到数据工厂。 链接服务类似于连接字符串,它定义该服务连接到外部资源时所需的连接信息。 不妨这样考虑:数据集代表链接的数据存储中的数据结构,而链接服务则定义到数据源的连接。 例如,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 表。

下图显示了该服务中管道、活动、数据集和链接服务之间的关系:

管道、活动、数据集和链接服务之间的关系

链接服务 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 APIPowerShellREST APIAzure 资源管理器模板Azure 门户

数据存储链接的服务

有关支持的数据存储列表,可参阅连接器概述一文。 单击数据存储可了解支持的连接属性。

计算链接服务

要详细了解不同的配置以及可从该服务连接到的不同的计算环境,请参阅支持的计算环境

后续步骤

请参阅以下教程,了解使用下列某个工具或 SDK 创建管道和数据集的分步说明。