Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ОБЛАСТЬ ПРИМЕНЕНИЯ:
Фабрика данных Azure
Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
В этой статье описывается, как с помощью действия копирования в конвейерах Фабрики данных Azure и Synapse Analytics копируются данные из базы данных DB2. Это продолжение статьи об обзоре действия копирования, в которой представлены общие сведения о действии копирования.
Поддерживаемые возможности
Соединитель DB2 поддерживается для следующих возможностей:
| Поддерживаемые возможности | IR |
|---|---|
| Действие копирования (источник/-) | (1) (2) |
| Действие поиска | (1) (2) |
① Среда выполнения интеграции Azure ② Локальная среда выполнения интеграции
Список хранилищ данных, которые поддерживаются в качестве источников и приемников для действия копирования, приведен в таблице Поддерживаемые хранилища данных и форматы.
В частности, этот соединитель DB2 поддерживает приведенные ниже платформы и версии IBM DB2 с архитектурой распределенной реляционной базы данных (DRDA) SQL Access Manager (SQLAM) версии 9, 10 и 11. Он использует протокол DDM/DRDA.
- IBM DB2 для z/OS версии 12.1
- IBM DB2 для z/OS версии 11.1
- IBM DB2 для i версии 7.3
- IBM DB2 для i версии 7.2
- IBM DB2 для i версии 7.1
- IBM DB2 для LUW версии 11
- IBM DB2 для LUW версии 10.5
- IBM DB2 для LUW версии 10.1
Необходимые компоненты
Если хранилище данных размещено в локальной сети, виртуальной сети Azure или виртуальном частном облаке Amazon, для подключения к нему нужно настроить локальную среду выполнения интеграции.
Если же хранилище данных представляет собой управляемую облачную службу данных, можно использовать Azure Integration Runtime. Если доступ предоставляется только по IP-адресам, утвержденным в правилах брандмауэра, вы можете добавить IP-адреса Azure Integration Runtime в список разрешений.
Вы также можете использовать функцию среды выполнения интеграции в управляемой виртуальной сети в Фабрике данных Azure для доступа к локальной сети без установки и настройки локальной среды выполнения интеграции.
Дополнительные сведения о вариантах и механизмах обеспечения сетевой безопасности, поддерживаемых Фабрикой данных, см. в статье Стратегии получения доступа к данным.
Среда выполнения интеграции предоставляет встроенный драйвер DB2, поэтому при копировании данных из DB2 вам не потребуется устанавливать драйвер вручную.
Начало работы
Для выполнения действия копирования с конвейером можно использовать один из следующих средств или пакетов SDK:
- Средство копирования данных
- Портал Azure
- Пакет SDK для .NET
- Пакет SDK для Python
- Azure PowerShell
- REST API
- Шаблон Azure Resource Manager
Создание связанной службы для DB2 с помощью пользовательского интерфейса
Выполните следующие действия, чтобы создать связанную службу для DB2 в пользовательском интерфейсе портала Azure.
Перейдите на вкладку "Управление" в рабочей области Фабрики данных Azure или Synapse и выберите "Связанные службы", после чего нажмите "Создать":
Найдите DB2 и выберите соединитель DB2.
Настройте сведения о службе, проверьте подключение и создайте связанную службу.
Сведения о конфигурации соединителя
Следующие разделы содержат сведения о свойствах JSON, которые используются для определения сущностей фабрики данных, относящихся к соединителю DB2.
Свойства связанной службы
Для связанной службы DB2 поддерживаются следующие свойства:
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| type | Для свойства типа необходимо задать значение Db2 | Да |
| connectionString | Укажите сведения, необходимые для подключения к экземпляру DB2. Вы можете также поместить пароль в Azure Key Vault и извлечь конфигурацию password из строки подключения. Ознакомьтесь с приведенными ниже примерами и подробными сведениями в статье Хранение учетных данных в Azure Key Vault. |
Да |
| connectVia | Среда выполнения интеграции, используемая для подключения к хранилищу данных. Дополнительные сведения см. в разделе Предварительные условия. Если не указано другое, по умолчанию используется интегрированная среда выполнения Azure. | No |
Типичный набор свойств для строки подключения.
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| server | Имя сервера DB2. Вы можете указать номер порта следом за именем сервера, разделив их двоеточием, например server:port.Соединитель DB2 использует протокол DDM/DRDA и порт 50 000 по умолчанию, если он не настроен. Для конкретной базы данных DB2 используемый порт может отличаться в зависимости от версии и настроенных параметров. Например, для DB2 LUW по умолчанию используется порт 50 000, а для AS400 — 446 (или 448, если включен TLS). Ознакомьтесь со следующими документами DB2 о том, как обычно настроен порт: DB2 z/OS, DB2 iSeries и DB2 LUW. |
Да |
| database | Имя базы данных DB2. | Да |
| authenticationType | Тип проверки подлинности, используемый для подключения к базе данных DB2. Допустимое значение: Базовый. |
Да |
| username | Укажите имя пользователя для подключения к базе данных DB2. | Да |
| password | Введите пароль для учетной записи пользователя, указанной для выбранного имени пользователя. Пометьте это поле как SecureString, чтобы безопасно хранить его, или добавьте ссылку на секрет, хранящийся в Azure Key Vault. | Да |
| packageCollection | Укажите, в каком расположении автоматически создаются необходимые пакеты при запросе к базе данных. Если этот параметр не задан, служба использует {username} в качестве значения по умолчанию. | No |
| certificateCommonName | При использовании протоколов SSL или TLS необходимо ввести значение для параметра "Общее имя сертификата". | No |
Совет
Если вы получите сообщение об ошибке The package corresponding to an SQL statement execution request was not found. SQLSTATE=51002 SQLCODE=-805, это означает, что необходимый пакет для пользователя не создан. По умолчанию служба попытается создать пакет в коллекции с тем же именем, что у пользователя, которое использовалось при подключении к DB2. Укажите свойство коллекции пакетов, чтобы определить, где служба будет создавать необходимые пакеты при запросе к базе данных. Если не удается определить имя коллекции пакетов, попробуйте задать packageCollection=NULLID.
Пример:
{
"name": "Db2LinkedService",
"properties": {
"type": "Db2",
"typeProperties": {
"connectionString": "server=<server:port>;database=<database>;authenticationType=Basic;username=<username>;password=<password>;packageCollection=<packagecollection>;certificateCommonName=<certname>;"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Пример: хранение пароля в Azure Key Vault
{
"name": "Db2LinkedService",
"properties": {
"type": "Db2",
"typeProperties": {
"connectionString": "server=<server:port>;database=<database>;authenticationType=Basic;username=<username>;packageCollection=<packagecollection>;certificateCommonName=<certname>;",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Если вы раньше использовали связанную службу DB2 с перечисленными ниже полезными данными, такая система пока поддерживается и не требует изменений, но мы рекомендуем при любом удобном случае перейти на новую версию.
Предыдущие полезные данные:
{
"name": "Db2LinkedService",
"properties": {
"type": "Db2",
"typeProperties": {
"server": "<servername:port>",
"database": "<dbname>",
"authenticationType": "Basic",
"username": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Свойства набора данных
Полный список разделов и свойств, доступных для определения наборов данных, см. в статье о наборах данных. Этот раздел содержит список свойств, поддерживаемых набором данных DB2.
Для копирования данных из DB2 поддерживаются следующие свойства.
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| type | Свойство типа набора данных должно иметь значение : Db2Table | Да |
| schema | Имя схемы. | Нет (если свойство query указано в источнике действия) |
| table | Имя таблицы. | Нет (если свойство query указано в источнике действия) |
| tableName | Имя таблицы со схемой. Это свойство поддерживается только для обеспечения обратной совместимости. Для новых рабочих нагрузок используйте schema и table. |
Нет (если свойство query указано в источнике действия) |
Пример
{
"name": "DB2Dataset",
"properties":
{
"type": "Db2Table",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<DB2 linked service name>",
"type": "LinkedServiceReference"
}
}
}
Если вы ранее использовали типизированный набор данных RelationalTable, он пока поддерживается и не требует изменений, но мы рекомендуем при любом удобном случае перейти на новую версию.
Свойства действия копирования
Полный список разделов и свойств, используемых для определения действий, см. в статье Конвейеры и действия в фабрике данных Azure. Этот раздел содержит список свойств, поддерживаемых источником DB2.
DB2 в качестве источника
Для копирования данных из DB2 в разделе source для действия копирования поддерживаются следующие свойства.
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| type | Свойство type источника действия копирования должно иметь значение: Db2Source | Да |
| query | Используйте пользовательский SQL-запрос для чтения данных. Например: "query": "SELECT * FROM \"DB2ADMIN\".\"Customers\"". |
Нет (если для набора данных задано свойство tableName) |
Пример:
"activities":[
{
"name": "CopyFromDB2",
"type": "Copy",
"inputs": [
{
"referenceName": "<DB2 input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "Db2Source",
"query": "SELECT * FROM \"DB2ADMIN\".\"Customers\""
},
"sink": {
"type": "<sink type>"
}
}
}
]
Если вы ранее использовали типизированный источник RelationalSource, он пока поддерживается и не требует изменений, но мы рекомендуем в дальнейшем использовать более новую версию.
Сопоставление типов данных для DB2
При копировании данных из DB2 используются следующие сопоставления типов данных DB2 с промежуточными типами данных, используемыми службой для внутренних целей. Дополнительные сведения о том, как действие копирования сопоставляет исходную схему и типы данных для приемника, см. в статье Сопоставление схем в действии копирования.
| Тип базы данных DB2 | Промежуточный тип данных службы |
|---|---|
| BigInt | Int64 |
| Binary | Byte[] |
| BLOB-объект | Byte[] |
| Char | Строка |
| Clob | Строка |
| Дата | Datetime |
| DB2DynArray | Строка |
| DbClob | Строка |
| Десятичное число | Десятичное число |
| DecimalFloat | Десятичное число |
| Двойной | Двойной |
| Тип с плавающей запятой | Двойной |
| GRAPHIC | Строка |
| Целое число | Int32 |
| LongVarBinary | Byte[] |
| LongVarChar | Строка |
| LongVarGraphic | Строка |
| Числовое | Десятичное число |
| Вещественное число | Одна |
| SmallInt | Int16 |
| Время | TimeSpan |
| Метка времени | Дата/время |
| VarBinary | Byte[] |
| VarChar | Строка |
| VarGraphic | Строка |
| Xml | Byte[] |
Свойства действия поиска
Подробные сведения об этих свойствах см. в разделе Действие поиска.
Связанный контент
Список хранилищ данных, которые поддерживаются в качестве источников и приемников для действия Copy, приведен в таблице Поддерживаемые хранилища данных и форматы.