Поделиться через


Копирование данных из Greenplum с помощью Фабрики данных Azure или Synapse Analytics

ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics

Совет

Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !

В этой статье описывается, как с помощью действия Copy в конвейере Фабрики данных Azure или Azure Synapse Analytics копировать данные из Greenplum. Это продолжение статьи об обзоре действия копирования, в которой представлены общие сведения о действии копирования.

Это важно

Соединитель Greenplum версии 2.0 предоставляет улучшенную поддержку для системы Greenplum. Если вы используете соединитель Greenplum версии 1.0 в решении, обновите соединитель Greenplum до 31 августа 2025 г. Дополнительные сведения о разнице между версией 2.0 и версией 1.0 см. в этом разделе .

Поддерживаемые возможности

Этот соединитель Greenplum поддерживается для следующих возможностей:

Поддерживаемые возможности ИК
Копирование (источник/-) (1) (2)
Процесс поиска (1) (2)

① Среда выполнения интеграции Azure ② Локальная среда выполнения интеграции

Список хранилищ данных, которые поддерживаются в качестве источников и приемников копирования, приведен в таблице Поддерживаемые хранилища данных.

Служба предоставляет встроенный драйвер для обеспечения подключения, поэтому вам не нужно вручную устанавливать какой-либо драйвер с помощью этого соединителя.

Предварительные условия

Если хранилище данных размещено в локальной сети, виртуальной сети Azure или виртуальном частном облаке Amazon, для подключения к нему нужно настроить локальную среду выполнения интеграции.

Если же хранилище данных представляет собой управляемую облачную службу данных, можно использовать Azure Integration Runtime. Если доступ предоставляется только по IP-адресам, утвержденным в правилах брандмауэра, вы можете добавить IP-адреса Azure Integration Runtime в список разрешений.

Вы также можете использовать функцию среды выполнения интеграции в управляемой виртуальной сети в Фабрике данных Azure для доступа к локальной сети без установки и настройки локальной среды выполнения интеграции.

Дополнительные сведения о вариантах и механизмах обеспечения сетевой безопасности, поддерживаемых Фабрикой данных, см. в статье Стратегии получения доступа к данным.

Начало работы

Чтобы выполнить действие копирования с конвейером, можно воспользоваться одним из приведенных ниже средств или пакетов SDK:

Создание связанной службы для Greenplum с помощью пользовательского интерфейса

Выполните следующие действия, чтобы создать связанную службу для Greenplum с помощью пользовательского интерфейса на портале Azure.

  1. Перейдите на вкладку "Управление" в рабочей области Фабрики данных Azure или Synapse и выберите "Связанные службы", после чего нажмите "Создать":

  2. Выполните поиск Greenplum и выберите соединитель Greenplum.

    Снимок экрана: соединитель Greenplum.

  3. Настройте сведения о службе, проверьте подключение и создайте связанную службу.

    Снимок экрана: конфигурация связанной службы для Greenplum.

Сведения о конфигурации соединителя

Следующие разделы содержат сведения о свойствах, которые используются для определения сущностей фабрики данных, относящихся к соединителю Greenplum.

Свойства связанной службы

Соединитель Greenplum теперь поддерживает версию 2.0. См. этот раздел , чтобы обновить версию соединителя Greenplum с версии 1.0. Чтобы узнать подробности о свойстве, см. соответствующие разделы.

Версия 2.0

Связанная служба Greenplum поддерживает следующие свойства при применении версии 2.0:

Свойство Описание: Обязательное поле
тип Для свойства type необходимо задать значение Greenplum. Да
версия Версия, которую вы указали. Значение равно 2.0. Да
хост Указывает имя узла ( и при необходимости порт), на котором выполняется база данных. Да
порт TCP-порт сервера базы данных. Значение по умолчанию — 5432. Нет
база данных База данных, к которой нужно подключиться. Да
имя пользователя Имя пользователя для подключения. Не требуется, если используется IntegratedSecurity. Да
пароль Пароль для подключения. Не требуется, если используется IntegratedSecurity. Пометьте это поле как SecureString для безопасного хранения. Вы можете также указать секрет, хранящийся в Azure Key Vault. Да
режим SSL Определяет, используется ли SSL в зависимости от поддержки сервера.
- Отключить: SSL отключен. Если серверу требуется SSL, подключение завершится ошибкой.
- Разрешить: Предпочитать незашифрованные подключения, если сервер разрешает, но также разрешать SSL-подключения.
- Предпочитать: предпочитать SSL-подключения, если сервер разрешает их, но разрешать подключения без SSL.
- Требовать: разорвать соединение, если сервер не поддерживает SSL.
- Проверка-ca: Прервать подключение, если сервер не поддерживает SSL. Также проверяет сертификат сервера.
- Полная проверка: Отказ подключения, если сервер не поддерживает SSL. Также проверяет сертификат сервера по имени узла.
Параметры: Отключить (0) / Разрешить (1) / Предпочитать (2) / Требовать (3) (по умолчанию) / Verify-ca (4) / Verify-full (5)
Да
тип аутентификации Тип проверки подлинности для подключения к базе данных. Поддерживается только базовый. Да
connectVia Среда выполнения интеграции, используемая для подключения к хранилищу данных. Дополнительные сведения см. в разделе Предварительные условия. Если не указано другое, по умолчанию используется интегрированная среда выполнения Azure. Нет
Дополнительные свойства подключения:
время ожидания подключения Время ожидания (в секундах) при попытке установить подключение, прежде чем завершать попытку и создать ошибку. Значение по умолчанию — 15. Нет
commandTimeout Время ожидания (в секундах) при попытке выполнить команду, прежде чем завершать попытку и создать ошибку. Установите значение на ноль для достижения бесконечности. Значение по умолчанию — 30. Нет

Пример:

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "version": "2.0",
        "typeProperties": {
            "host": "<host>",
            "port": 5432,
            "database": "<database>",
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "sslMode": <sslmode>,
            "authenticationType": "Basic"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Пример: хранение пароля в Azure Key Vault

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "version": "2.0",
        "typeProperties": {
            "host": "<host>",
            "port": 5432,
            "database": "<database>",
            "username": "<username>",
            "password": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            },
            "sslMode": <sslmode>,
            "authenticationType": "Basic"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Версия 1.0

Связанная служба Greenplum поддерживает следующие свойства при применении версии 1.0:

Свойство Описание: Обязательное поле
тип Для свойства type необходимо задать значение Greenplum. Да
connectionString Строка подключения к Greenplum через интерфейс ODBC.
Вы можете также поместить пароль в Azure Key Vault и извлечь конфигурацию pwd из строки подключения. Ознакомьтесь с приведенными ниже примерами и подробными сведениями в статье Хранение учетных данных в Azure Key Vault.
Да
connectVia Среда выполнения интеграции, используемая для подключения к хранилищу данных. Дополнительные сведения см. в разделе Предварительные условия. Если не указано другое, по умолчанию используется интегрированная среда выполнения Azure. Нет

Пример:

{
    "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 Key Vault

{
    "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 и table. Нет (если запрос указан в источнике активности)

Пример

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

Свойства действия копирования

Для получения полного списка разделов и свойств, используемых для определения действий, см. статью Конвейеры. Этот раздел содержит список свойств, поддерживаемых источником Greenplum.

GreenplumSource в качестве источника

Чтобы копировать данные из Greenplum, задайте для типа источника в действии копирования значение GreenplumSource. В разделе source операции копирования поддерживаются следующие свойства:

Свойство Описание: Обязательное поле
тип Свойство 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>"
            }
        }
    }
]

Сопоставление типов данных для Greenplum

При копировании данных из Greenplum следующие сопоставления применяются из типов данных Greenplum к внутренним типам данных, используемым службой. Чтобы узнать, как действие копирования сопоставляет исходную схему и типы данных с приемником, см. раздел Сопоставление схем и типов данных.

Тип данных Greenplum Тип данных промежуточной службы (для версии 2.0) Тип данных промежуточной службы (для версии 1.0)
SmallInt Int16 Int16
Целое число Int32 Int32
БигИнт Int64 Int64
Десятичная (точность <= 28) Десятичное число Десятичное число
Десятичная (точность > 28) Десятичное число Струна
Числовое Десятичное число Десятичное число
Реальный Один Один
Двойной Двойной Двойной
SmallSerial Int16 Int16
Серийный Int32 Int32
BigSerial Int64 Int64
Деньги Десятичное число Струна
Уголь Струна Струна
Varchar Струна Струна
Текст Струна Струна
Байта Байт[] Байт[]
Отметка времени дата и время дата и время
Метка времени с временной зоной DateTimeOffset (смещение даты и времени) Струна
Дата Дата дата и время
Время Интервал времени Интервал времени
Время с часовым поясом DateTimeOffset (смещение даты и времени) Струна
Интервал Интервал времени Струна
булевый булевый булевый
Точка Струна Струна
Линия Струна Струна
Iseg Струна Струна
коробка Струна Струна
Путь Струна Струна
Многоугольник Струна Струна
Круг Струна Струна
CIDR Струна Струна
Inet Струна Струна
Макаддр Струна Струна
Macaddr8 Струна Струна
Tsvector Струна Струна
Тсквери (Tsquery) Струна Струна
UUID (Универсальный уникальный идентификатор) Гид Гид
Json Струна Струна
Jsonb Струна Струна
Массив Струна Струна
Бит Байт[] Байт[]
Битовая переменная Байт[] Байт[]
XML Струна Струна
IntArray (IntArray) Струна Струна
TextArray Струна Струна
NumericArray Струна Струна
DateArray Струна Струна
Диапазон Струна Струна
Bpchar Струна Струна

Свойства действия поиска

Подробные сведения об этих свойствах см. в разделе Действие поиска.

Обновление соединителя Greenplum

Ниже приведены действия, которые помогут вам обновить соединитель Greenplum:

  1. На странице "Изменить связанную службу " выберите версию 2.0 и настройте связанную службу, указав свойства связанной службы версии 2.0.

  2. Сопоставление типов данных для связанной службы Greenplum версии 2.0 отличается от сопоставления типов данных для версии 1.0. Сведения о последнем сопоставлении типов данных см. в разделе "Сопоставление типов данных" для Greenplum.

Различия между Greenplum версии 2.0 и версией 1.0

Соединитель Greenplum версии 2.0 предлагает новые функции и совместим с большинством функций версии 1.0. В таблице ниже показаны различия функций между версией 2.0 и версией 1.0.

Версия 2.0 Версия 1.0
Следующие сопоставления используются для преобразования типов данных Greenplum во временный тип данных службы.

Десятичная (точность > 28) —> десятичная
Деньги —> десятичная система
Метка времени с часовыми поясами —> DateTimeOffset
Время с часовым поясом —> DateTimeOffset
Интервал —> timeSpan
Следующие сопоставления используются для преобразования типов данных Greenplum во временный тип данных службы.

Десятичная (точность > 28) —> строка
Деньги —> строка
Метка времени с часовым поясом ->String
Время с часовым поясом —> строка
Интервал —> строка

Список хранилищ данных, которые поддерживаются в качестве источников и приемников для действия копирования, приведен в таблице Поддерживаемые хранилища данных.