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


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

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

Подсказка

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

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

Это важно

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

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

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

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

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

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

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

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

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

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

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

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

  2. Найдите Presto и выберите соединитель Presto.

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

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

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

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

В следующих разделах содержатся сведения о характеристиках, которые используются для определения сущностей Data Factory, специфичных для соединителя Presto.

Свойства связанного сервиса

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

Версия 2.0

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

Недвижимость Описание Обязательно
тип Свойство type должно иметь значение : Presto Да
версия Версия, которую вы указали. Значение равно 2.0. Да
хост IP-адрес или имя узла сервера Presto. (например, 192.168.222.160) Да
каталог Контекст каталога для всех запросов к серверу. Да
порт TCP-порт, используемый сервером Presto для прослушивания клиентских подключений. Значение по умолчанию — 8443. нет
тип аутентификации Механизм проверки подлинности, используемый для подключения к серверу Presto.
Допустимые значения: Анонимные, LDAP
Да
имя пользователя Имя пользователя, используемое для подключения к серверу Presto. нет
пароль Пароль, соответствующий имени пользователя. Пометьте это поле как SecureString, чтобы безопасно хранить его, или добавьте ссылку на секрет, хранящийся в Azure Key Vault. нет
включитьSSL Указывает, шифруются ли подключения к серверу с помощью протокола TLS. Значение по умолчанию — true. нет
включитьПроверкуСертификатаСервера Укажите, следует ли включить проверку SSL-сертификата сервера при подключении.
Всегда используйте системное хранилище доверия. Значение по умолчанию — true.
нет
идентификатор часового пояса Локальный часовой пояс, используемый подключением. Допустимые значения этого параметра указываются в базе данных часовых поясов IANA. Значением по умолчанию является системный часовой пояс Presto. нет

Пример:

{
    "name": "PrestoLinkedService",
    "properties": {
        "type": "Presto",
        "version" : "2.0",
        "typeProperties": {
            "host" : "<host>",
            "catalog" : "<catalog>",
            "port" : 8443,
            "authenticationType" : "LDAP",
            "username" : "<username>",
            "password": {
                 "type": "SecureString",
                 "value": "<password>"
            },
            "enableSsl": true,
            "enableServerCertificateValidation": true,
            "timeZoneID" : ""
        }
    }
}

Версия 1.0

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

Недвижимость Описание Обязательно
тип Свойство type должно иметь значение : Presto Да
хост IP-адрес или имя узла сервера Presto. (например, 192.168.222.160) Да
версия сервера Версия сервера Presto. (например, 0,148-t) Да
каталог Контекст каталога для всех запросов к серверу. Да
порт TCP-порт, используемый сервером Presto для прослушивания клиентских подключений. Значение по умолчанию — 8080. нет
тип аутентификации Механизм проверки подлинности, используемый для подключения к серверу Presto.
Допустимые значения: Анонимные, LDAP
Да
имя пользователя Имя пользователя, используемое для подключения к серверу Presto. нет
пароль Пароль, соответствующий имени пользователя. Пометьте это поле как SecureString, чтобы безопасно хранить его, или добавьте ссылку на секрет, хранящийся в Azure Key Vault. нет
включитьSSL Указывает, шифруются ли подключения к серверу с помощью протокола TLS. По умолчанию используется значение false. нет
доверенный_путь_сертификата Полный путь к PEM-файлу, содержащему сертификаты удостоверяющего центра (ЦС) для проверки сервера при подключении по протоколу TLS. Это свойство можно установить только при использовании TLS на самостоятельно размещённой среде выполнения интеграции (IR). Значением по умолчанию является файл cacerts.pem, который устанавливается вместе с IR. нет
useSystemTrustStore (использовать хранилище доверия системы) Указывает, следует ли использовать сертификат ЦС из доверенного хранилища системы или из указанного PEM-файла. По умолчанию используется значение false. нет
разрешитьНесоответствиеИмениХостаCN Указывает, следует ли требовать, чтобы имя TLS/SSL-сертификата, выданного ЦС, совпадало с именем узла сервера при подключении по протоколу TLS. По умолчанию используется значение false. нет
разрешить самоподписанный серверный сертификат Указывает, следует ли разрешить использование самозаверяющих сертификатов с сервера. По умолчанию используется значение false. нет
идентификатор часового пояса Локальный часовой пояс, используемый подключением. Допустимые значения этого параметра указываются в базе данных часовых поясов IANA. Значением по умолчанию является часовой пояс Фабрики данных Azure. нет

Пример:

{
    "name": "PrestoLinkedService",
    "properties": {
        "type": "Presto",
        "typeProperties": {
            "host" : "<host>",
            "serverVersion" : "0.148-t",
            "catalog" : "<catalog>",
            "port" : "<port>",
            "authenticationType" : "LDAP",
            "username" : "<username>",
            "password": {
                 "type": "SecureString",
                 "value": "<password>"
            },
            "timeZoneID" : "Europe/Berlin"
        }
    }
}

Свойства набора данных

Полный список разделов и свойств, доступных для определения наборов данных, см. в статье о наборах данных. В этом разделе представлен список свойств, поддерживаемых набором данных Presto.

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

Недвижимость Описание Обязательно
тип Свойство type набора данных должно иметь значение : PrestoObject Да
схема Имя схемы. Нет (если запрос указан в источнике активности)
таблица Название таблицы. Нет (если запрос указан в источнике активности)
имя_таблицы Имя таблицы со схемой. Это свойство поддерживается только для обеспечения обратной совместимости. Для новых рабочих нагрузок используйте schema и table. Нет (если запрос указан в источнике активности)

Пример

{
    "name": "PrestoDataset",
    "properties": {
        "type": "PrestoObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Presto linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

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

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

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

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

Недвижимость Описание Обязательно
тип Свойство type источника действия копирования должно иметь значение: PrestoSource Да
запрос Используйте пользовательский SQL-запрос для чтения данных. Например: "SELECT * FROM MyTable". Нет (если для набора данных задано свойство tableName)

Пример:

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

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

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

Тип данных Presto Тип данных промежуточной службы (для версии 2.0) Тип данных промежуточной службы (для версии 1.0)
МАССИВ Струна Струна
БИГИНТ Int64 Int64
Булевый Булев Булев
УГОЛЬ Струна Струна
Дата Дата Дата и время
DECIMAL (точность < 28) Десятичное число Десятичное число
DECIMAL (точность >= 28) Десятичное число Струна
ДВОЙНОЙ Двойной Двойной
ЦЕЛОЕ ЧИСЛО Int32 Int32
ИНТЕРВАЛ ДНЕЙ ДО СЕКУНД Интервал времени Не поддерживается.
ИНТЕРВАЛ_ОТ_ГОДА_К_МЕСЯЦУ Струна Не поддерживается.
IP-адрес Струна Не поддерживается.
JSON (JavaScript Object Notation) Струна Струна
КАРТА Струна Струна
РЕАЛЬНЫЙ Один Один
РЯД Струна Струна
СМОЛЛИНТ Int16 Int16
ВРЕМЯ Время Интервал времени
ВРЕМЯ_С_ЧАСОВЫМ_ПОЯСОМ Струна Струна
TIMESTAMP Дата и время Дата и время
TIMESTAMPWITHTIMEZONE Datetimeoffset Не поддерживается.
TINYINT SByte Int16
UUID (Универсальный уникальный идентификатор) Гид Не поддерживается.
VARBINARY Байт[] Байт[]
VARCHAR Струна Струна

Свойства операции поиска

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

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

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

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

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

Различия между соединителем Presto версии 2.0 и версией 1.0

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

Версия 2.0 Версия 1.0
Функция serverVersion не поддерживается. serverVersion поддерживается.
Значение port по умолчанию — 8443. Значение port по умолчанию — 8080.
Значение enableSSL по умолчанию имеет значение true.

enableServerCertificateValidation поддерживается.

trustedCertPath, useSystemTrustStoreallowHostNameCNMismatch и allowSelfSignedServerCert не поддерживаются.
Значение enableSSL по умолчанию равно false.

Функция enableServerCertificateValidation не поддерживается.

trustedCertPath, useSystemTrustStore, allowHostNameCNMismatch и allowSelfSignedServerCert поддерживаются.
Значением timeZoneID по умолчанию является системный часовой пояс Presto. Значением timeZoneID по умолчанию является часовой пояс Фабрики данных Azure.
Следующие сопоставления используются для преобразования типов данных Presto в промежуточный тип данных сервиса.

DATE —> Дата
DECIMAL (точность >= 28) —> десятичная
INTERVAL_DAY_TO_SECOND —> Временной интервал
INTERVAL_YEAR_TO_MONTH —> строка
IPADDRESS —> строка
TIME —> «время»
TIMESTAMPWITHTIMEZONE —> Смещение даты и времени
TINYINT -> SByte
UUID —> GUID
Следующие сопоставления используются для преобразования типов данных Presto в промежуточный тип данных сервиса.

DATE —> Дата и время
DECIMAL (точность >= 28) —> строка
TIME —> TimeSpan
TINYINT -> Int16
Другие сопоставления, указанные в левой части списка версии 2.0, не поддерживаются версией 1.0.

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