您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.

使用 Azure 数据工厂从 Greenplum 复制数据

适用于: Azure 数据工厂 Azure Synapse Analytics

本文概述了如何使用 Azure 数据工厂中的复制活动从 Greenplum 复制数据。 它是基于概述复制活动总体的复制活动概述一文。

支持的功能

以下活动支持此 Greenplum 连接器:

可以将数据从 Greenplum 复制到任何受支持的接收器数据存储。 有关复制活动支持作为源/接收器的数据存储列表,请参阅支持的数据存储表。

Azure 数据工厂提供内置的驱动程序用于启用连接,因此无需使用此连接器手动安装任何驱动程序。

先决条件

如果数据存储位于本地网络、Azure 虚拟网络或 Amazon Virtual Private Cloud 内部,则需要配置自承载集成运行时才能连接到该数据存储。

另外,如果数据存储是托管的云数据服务,可以使用 Azure 集成运行时。 如果访问范围限制为防火墙规则中允许的 IP,你可以选择将 Azure Integration Runtime IP 添加到允许列表。

要详细了解网络安全机制和数据工厂支持的选项,请参阅数据访问策略

入门

若要使用管道执行复制活动,可以使用以下工具或 SDK 之一:

对于特定于 Greenplum 连接器的数据工厂实体,以下部分提供有关用于定义这些实体的属性的详细信息。

链接服务属性

Greenplum 链接服务支持以下属性:

属性 说明 必需
type type 属性必须设置为:Greenplum
connectionString 用于连接到 Greenplum 的 ODBC 连接字符串。
还可以将密码放在 Azure 密钥保管库中,并从连接字符串中拉取 pwd 配置。 有关更多详细信息,请参阅以下示例和在 Azure 密钥保管库中存储凭据一文。
connectVia 用于连接到数据存储的集成运行时。 在先决条件部分了解更多信息。 如果未指定,则使用默认 Azure Integration Runtime。

示例:

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "typeProperties": {
            "connectionString": "HOST=<server>;PORT=<port>;DB=<database>;UID=<user name>;PWD=<password>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

示例:在 Azure 密钥保管库中存储密码

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "typeProperties": {
            "connectionString": "HOST=<server>;PORT=<port>;DB=<database>;UID=<user name>;",
            "pwd": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

数据集属性

有关可用于定义数据集的各部分和属性的完整列表,请参阅数据集一文。 本部分提供 Greenplum 数据集支持的属性列表。

要从 Greenplum 复制数据,请将数据集的 type 属性设置为 GreenplumTable。 支持以下属性:

属性 说明 必需
type 数据集的类型属性必须设置为:GreenplumTable
schema 架构的名称。 否(如果指定了活动源中的“query”)
表的名称。 否(如果指定了活动源中的“query”)
tableName 具有架构的表的名称。 支持此属性是为了向后兼容。 对于新的工作负荷,请使用 schematable 否(如果指定了活动源中的“query”)

示例

{
    "name": "GreenplumDataset",
    "properties": {
        "type": "GreenplumTable",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Greenplum linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

复制活动属性

有关可用于定义活动的各部分和属性的完整列表,请参阅管道一文。 本部分提供 Greenplum 数据源支持的属性列表。

以 GreenplumSource 作为源

要从 Greenplum 复制数据,请将复制活动中的源类型设置为“GreenplumSource”。 复制活动 source 部分支持以下属性:

属性 说明 必需
type 复制活动源的 type 属性必须设置为:GreenplumSource
查询 使用自定义 SQL 查询读取数据。 例如:"SELECT * FROM MyTable" 否(如果指定了数据集中的“tableName”)

示例:

"activities":[
    {
        "name": "CopyFromGreenplum",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Greenplum input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "GreenplumSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

查找活动属性

若要了解有关属性的详细信息,请查看 Lookup 活动

后续步骤

有关 Azure 数据工厂中复制活动支持作为源和接收器的数据存储的列表,请参阅支持的数据存储