Копирование данных из Azure Data Explorer или обратно с помощью Фабрики данных Azure или Synapse Analytics
ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
В этой статье описывается, как использовать действие копирования в конвейерах Фабрики данных Azure и Synapse Analytics для копирования данных в Azure Data Explorer или из него. Это продолжение статьи о действии копирования, в которой представлены общие сведения о копировании.
Совет
Дополнительные сведения об интеграции Azure Data Explorer со службой см. в статье Интеграция Azure Data Explorer.
Поддерживаемые возможности
Этот соединитель Azure Data Explorer поддерживается для следующих возможностей:
Поддерживаемые возможности | IR |
---|---|
Действие копирования (источник/приемник) | (1) (2) |
Поток данных для сопоставления (источник/приемник) | (1) |
Действие поиска | (1) (2) |
① Среда выполнения интеграции Azure ② Локальная среда выполнения интеграции
Вы можете скопировать данные из любого поддерживаемого хранилища исходных данных в Azure Data Explorer. Данные из базы данных Azure Data Explorer также можете скопировать в любое хранилище данных, поддерживаемое приемником. Список хранилищ данных, которые операция копирования поддерживает в качестве источников или приемников, см. в таблице Поддерживаемые хранилища данных.
Примечание.
Копирование данных в или из Azure Data Explorer через локальное хранилище данных с помощью локальной среды выполнения интеграции поддерживается в версии 3.14 и более поздних.
Соединитель Azure Data Explorer позволяет выполнять следующие действия:
- Скопируйте данные с помощью проверки подлинности маркера приложения Microsoft Entra с субъектом-службой.
- извлекать данные с помощью запроса KQL (Kusto) в качестве источника;
- добавлять данные в таблицу назначения в качестве приемника.
Начало работы
Совет
Пошаговое руководство по соединителю Azure Data Explorer см. в статьях Копирование данных в или из Azure Data Explorer и Массовое копирование из базы данных в Azure Data Explorer.
Чтобы выполнить действие копирования с конвейером, можно воспользоваться одним из приведенных ниже средств или пакетов SDK:
- средство копирования данных;
- Портал Azure
- Пакет SDK для .NET
- Пакет SDK для Python
- Azure PowerShell
- The REST API
- шаблон Azure Resource Manager.
Создание связанной службы для Azure Data Explorer с помощью пользовательского интерфейса
Выполните приведенные ниже действия, чтобы создать связанную службу для Azure Data Explorer с помощью пользовательского интерфейса на портале Azure.
Перейдите на вкладку "Управление" в рабочей области Фабрики данных Azure или Synapse и выберите "Связанные службы", после чего нажмите "Создать":
Выполните поиск по запросу "Explorer" и выберите соединитель Azure Data Explorer (Kusto).
Настройте сведения о службе, проверьте подключение и создайте связанную службу.
Сведения о конфигурации соединителя
Следующие разделы содержат сведения о свойствах, которые используются для определения сущностей, характерных для соединителя Azure Data Explorer.
Свойства связанной службы
Соединитель Azure Data Explorer поддерживает приведенные ниже типы проверки подлинности. Дополнительные сведения см. в соответствующих разделах:
- Проверка подлинности субъекта-службы
- Проверка подлинности с помощью назначенного системой управляемого удостоверения
- Проверка подлинности с помощью назначаемого пользователем управляемого удостоверения
Аутентификация субъекта-службы
Чтобы использовать проверку подлинности субъекта-службы, выполните следующие действия для получения субъекта-службы и предоставления разрешений:
Регистрация приложения с помощью платформы удостоверений Майкрософт. Дополнительные сведения см. в кратком руководстве. Регистрация приложения с помощью платформа удостоверений Майкрософт. Запишите эти значения, которые используются для определения связанной службы:
- Application ID
- ключ приложения.
- Идентификатор клиента
Предоставьте субъекту-службе правильные разрешения в Azure Data Explorer. Подробные сведения о ролях и разрешениях, а также об управлении разрешениями см. в статье Управление разрешениями базы данных Azure Data Explorer. Как правило, необходимо:
- предоставить базе данных в качестве источника по крайней мере роль Представление базы данных;
- В качестве приемника предоставьте по крайней мере роль пользователя базы данных вашей базе данных
Примечание.
Если действия по созданию выполняются в пользовательском интерфейсе, то для упорядочивания в виде списка кластеров, баз данных и таблиц Azure Data Explorer по умолчанию используется учетная запись пользователя для входа. С помощью субъекта-службы можно выбрать список объектов, щелкнув раскрывающееся меню рядом с кнопкой "Обновить" или введя имя вручную, если у вас нет разрешения на выполнение этих операций.
Для связанной службы Azure Data Explorer поддерживаются следующие свойства.
Свойство | Описание: | Обязательное поле |
---|---|---|
type | Свойству type необходимо задать значение AzureDataExplorer. | Да |
конечная точка | URL-адрес конечной точки кластера Azure Data Explorer в формате https://<clusterName>.<regionName>.kusto.windows.net . |
Да |
database | Имя базы данных. | Да |
tenant | Укажите сведения о клиенте (доменное имя или идентификатор клиента), в котором находится приложение. Это свойство известно как "Идентификатор центра авторизации" в строке подключения Kusto. Эти сведения можно получить, наведя указатель мыши на правый верхний угол страницы портала Azure. | Да |
servicePrincipalId | Укажите идентификатора клиента приложения. Это называется идентификатором клиента приложения Microsoft Entra в Kusto строка подключения. | Да |
servicePrincipalKey | Укажите ключ приложения. Это называется ключом приложения Microsoft Entra в Kusto строка подключения. Присвойте этому полю метку SecureString для безопасного хранения или добавьте ссылку на безопасные данные, хранящиеся в Azure Key Vault. | Да |
connectVia | Среда выполнения интеграции, используемая для подключения к хранилищу данных. Вы можете использовать среду выполнения интеграции Azure или локальную среду IR (если хранилище данных расположено в частной сети). Если не указано другое, используется среда выполнения интеграции Azure по умолчанию. | No |
Пример: использование проверки подлинности с помощью ключа субъекта-службы
{
"name": "AzureDataExplorerLinkedService",
"properties": {
"type": "AzureDataExplorer",
"typeProperties": {
"endpoint": "https://<clusterName>.<regionName>.kusto.windows.net ",
"database": "<database name>",
"tenant": "<tenant name/id e.g. microsoft.onmicrosoft.com>",
"servicePrincipalId": "<service principal id>",
"servicePrincipalKey": {
"type": "SecureString",
"value": "<service principal key>"
}
}
}
}
Проверка подлинности с помощью назначенного системой управляемого удостоверения
Дополнительные сведения об управляемых удостоверениях для ресурсов Azure см. в статье Что такое управляемые удостоверения для ресурсов Azure?.
Для использования проверки подлинности с помощью управляемого удостоверения, назначаемого системой, выполните приведенные ниже действия по предоставлению разрешений.
Получите управляемое удостоверение, скопировав значение идентификатора объекта управляемого удостоверения, созданного вместе с фабрикой или рабочей областью Synapse.
Предоставьте управляемому удостоверению правильные разрешения в Azure Data Explorer. Подробные сведения о ролях и разрешениях, а также об управлении разрешениями см. в статье Управление разрешениями базы данных Azure Data Explorer. Как правило, необходимо:
- В качестве источника предоставьте роль средства просмотра базы данных вашей базе данных.
- В качестве приемника предоставьте ролям средства просмотра базы данных и ролей средства просмотра баз данных.
Примечание.
Если вы выполняет действия по созданию в пользовательском интерфейсе, то для упорядочивания в виде списка кластеров, баз данных и таблиц Azure Data Explorer по умолчанию используется учетная запись пользователя для входа. Введите имя вручную, если у вас нет разрешения на выполнение этих операций.
Для связанной службы Azure Data Explorer поддерживаются следующие свойства.
Свойство | Описание: | Обязательное поле |
---|---|---|
type | Свойству type необходимо задать значение AzureDataExplorer. | Да |
конечная точка | URL-адрес конечной точки кластера Azure Data Explorer в формате https://<clusterName>.<regionName>.kusto.windows.net . |
Да |
database | Имя базы данных. | Да |
connectVia | Среда выполнения интеграции, используемая для подключения к хранилищу данных. Вы можете использовать среду выполнения интеграции Azure или локальную среду IR (если хранилище данных расположено в частной сети). Если не указано другое, используется среда выполнения интеграции Azure по умолчанию. | No |
Пример: использование проверки подлинности с помощью управляемого удостоверения, назначаемого системой
{
"name": "AzureDataExplorerLinkedService",
"properties": {
"type": "AzureDataExplorer",
"typeProperties": {
"endpoint": "https://<clusterName>.<regionName>.kusto.windows.net ",
"database": "<database name>",
}
}
}
Проверка подлинности с помощью назначаемого пользователем управляемого удостоверения
Дополнительные сведения об управляемых удостоверениях для ресурсов Azure см. в статье Управляемые удостоверения для ресурсов Azure.
Для использования проверки подлинности с помощью управляемого удостоверения, назначаемого пользователем, выполните приведенные ниже действия.
Создайте одно или несколько удостоверенный, назначаемых пользователем, и предоставьте разрешение в Azure Data Explorer. Подробные сведения о ролях и разрешениях, а также об управлении разрешениями см. в статье Управление разрешениями базы данных Azure Data Explorer. Как правило, необходимо:
- предоставить базе данных в качестве источника по крайней мере роль Представление базы данных;
- предоставить базе данных в качестве приемника по крайней мере роль Приемник базы данных.
Присвойте Фабрике данных или рабочему пространству Synapse одно или несколько управляемых удостоверений, назначаемых пользователем, и создайте учетные данные для каждого подобного удостоверения.
Для связанной службы Azure Data Explorer поддерживаются следующие свойства.
Свойство | Описание: | Обязательное поле |
---|---|---|
type | Свойству type необходимо задать значение AzureDataExplorer. | Да |
конечная точка | URL-адрес конечной точки кластера Azure Data Explorer в формате https://<clusterName>.<regionName>.kusto.windows.net . |
Да |
database | Имя базы данных. | Да |
учетные данные | Укажите назначаемое пользователем управляемое удостоверение в качестве объекта учетных данных. | Да |
connectVia | Среда выполнения интеграции, используемая для подключения к хранилищу данных. Вы можете использовать среду выполнения интеграции Azure или локальную среду IR (если хранилище данных расположено в частной сети). Если не указано другое, используется среда выполнения интеграции Azure по умолчанию. | No |
Пример: использование проверки подлинности с помощью управляемого удостоверения, назначаемого пользователем
{
"name": "AzureDataExplorerLinkedService",
"properties": {
"type": "AzureDataExplorer",
"typeProperties": {
"endpoint": "https://<clusterName>.<regionName>.kusto.windows.net ",
"database": "<database name>",
"credential": {
"referenceName": "credential1",
"type": "CredentialReference"
}
}
}
}
Свойства набора данных
Полный список разделов и свойств, доступных для определения наборов данных, см. в разделе Наборы данных в фабрике данных Azure. В этом разделе перечислены свойства, поддерживаемые набором данных Azure Data Explorer.
Чтобы скопировать данные в Azure Data Explorer, укажите для свойства type значение набора данных AzureDataExplorerTable.
Поддерживаются следующие свойства:
Свойство | Описание: | Обязательное поле |
---|---|---|
type | Свойству type необходимо присвоить значение AzureDataExplorerTable. | Да |
table | Имя таблицы, на которое ссылается связанная служба. | "Да" для приемника, "Нет" для источника |
Пример свойств набора данных:
{
"name": "AzureDataExplorerDataset",
"properties": {
"type": "AzureDataExplorerTable",
"typeProperties": {
"table": "<table name>"
},
"schema": [],
"linkedServiceName": {
"referenceName": "<Azure Data Explorer linked service name>",
"type": "LinkedServiceReference"
}
}
}
Свойства действия копирования
Полный список разделов и свойств, доступных для определения действий, см. в разделе Конвейеры и действия. Этот раздел содержит список свойств, поддерживаемых источником и приемником Azure Data Explorer.
Azure Data Explorer в качестве источника
Чтобы скопировать данные Azure Data Explorer, задайте для свойства type в источнике действия копирования значение AzureDataExplorerSource. В разделе source действия копирования поддерживаются следующие свойства:
Свойство | Описание: | Обязательное поле |
---|---|---|
type | Свойство type источника действия копирования должно иметь значение AzureDataExplorerSource | Да |
query | Запрос только для чтения в формате KQL. Используйте пользовательский запрос KQL в качестве ссылки. | Да |
queryTimeout | Срок до истечения времени ожидания запроса. Значение по умолчанию — 10 минут (00:10:00); допустимое максимальное значение — 1 час (01:00:00). | No |
noTruncation | Указывает, следует ли усекать возвращенный результирующий набор. По умолчанию результат усекается после 500 000 записей или 64 мегабайт (МБ). Усечение настоятельно рекомендуется для обеспечения правильного поведения действия. | No |
Примечание.
По умолчанию источник Azure Data Explorer имеет ограничение объема в 500 000 записей или 64 МБ. Чтобы получить все записи без усечения, можно указать set notruncation;
в начале запроса. Дополнительные сведения см. в статье об ограничениях запроса.
Пример:
"activities":[
{
"name": "CopyFromAzureDataExplorer",
"type": "Copy",
"typeProperties": {
"source": {
"type": "AzureDataExplorerSource",
"query": "TestTable1 | take 10",
"queryTimeout": "00:10:00"
},
"sink": {
"type": "<sink type>"
}
},
"inputs": [
{
"referenceName": "<Azure Data Explorer input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
]
}
]
Azure Data Explorer в качестве приемника
Чтобы скопировать данные Azure Data Explorer, задайте для свойства type в приемнике действия копирования значение AzureDataExplorerSink. В разделе sink действия копирования поддерживаются следующие свойства:
Свойство | Описание: | Обязательное поле |
---|---|---|
type | Свойству type приемника действий копирования должно быть присвоено значение: AzureDataExplorerSink. | Да |
ingestionMappingName | Имя предварительно созданного сопоставления в таблице Kusto. Чтобы сопоставить столбцы из источника с Azure Data Explorer (который применяется ко всем поддерживаемым исходным хранилищам и форматам, включая форматы CSV, JSON или Avro), можно использовать сопоставление столбцов действия копирования (неявно по имени или явно настроенное) и (или) сопоставления Azure Data Explorer. | No |
additionalProperties | Контейнер свойств, который можно использовать для указания любых свойств приема, которые еще не установлены Приемником Azure Data Explorer. В частности, это может быть полезно для указания тегов приема. Дополнительные сведения см. в документации по приему данных в Azure Data Explore. | No |
Пример:
"activities":[
{
"name": "CopyToAzureDataExplorer",
"type": "Copy",
"typeProperties": {
"source": {
"type": "<source type>"
},
"sink": {
"type": "AzureDataExplorerSink",
"ingestionMappingName": "<optional Azure Data Explorer mapping name>",
"additionalProperties": {<additional settings for data ingestion>}
}
},
"inputs": [
{
"referenceName": "<input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<Azure Data Explorer output dataset name>",
"type": "DatasetReference"
}
]
}
]
Свойства потока данных для сопоставления
При преобразовании данных в потоке данных для сопоставления можно выполнять операции чтения и записи в таблицах в Azure Data Explorer. Дополнительные сведения см. в описаниях преобразования источника и преобразования приемника в разделе, посвященном потокам данных для сопоставления. Можно выбрать использование Azure Data Explorer или встроенного набора данных в качестве типа источника и приемника.
Преобразование источника
В таблице ниже перечислены свойства, поддерживаемые источником Azure Data Explorer. Изменить эти свойства можно на вкладке Source options (Параметры источника).
Имя | Описание | Обязательное поле | Допустимые значения | Свойство скрипта для потока данных |
---|---|---|---|---|
Таблица | Если в качестве входных данных выбрать вариант "Таблица", поток данных будет получать все данные из таблицы, указанной в наборе данных Azure Data Explorer, или в параметрах источника при использовании встроенного набора данных. | Нет | Строка | (только для встроенного набора данных) tableName |
Query | Запрос только для чтения в формате KQL. Используйте пользовательский запрос KQL в качестве ссылки. | Нет | Строка | query |
Время ожидания | Срок до истечения времени ожидания запроса. По умолчанию — 172 000 (2 дня) | No | Целое | timeout |
Примеры сценариев источника Azure Data Explorer
Если используется набор данных Azure Data Explorer в качестве типа источника, связанным сценарием потока данных будет:
source(allowSchemaDrift: true,
validateSchema: false,
query: 'table | take 10',
format: 'query') ~> AzureDataExplorerSource
Если используется встроенный набор данных, связанный сценарий потока данных будет следующим:
source(allowSchemaDrift: true,
validateSchema: false,
format: 'query',
query: 'table | take 10',
store: 'azuredataexplorer') ~> AzureDataExplorerSource
Преобразование приемника
В таблице ниже перечислены свойства, поддерживаемые приемником Azure Data Explorer. Эти свойства можно изменить на вкладке Параметры. При использовании встроенного набора данных будут отображаться дополнительные параметры, совпадающие со свойствами, описанными в разделе Свойства набора данных.
Имя | Описание | Обязательное поле | Допустимые значения | Свойство скрипта для потока данных |
---|---|---|---|---|
Действие таблицы | Определяет, следует ли повторно создавать или удалять все строки в целевой таблице перед записью. - Нет: действия с таблицей не будут выполняться. - Создать повторно: таблица будет удалена и создана повторно. Это действие необходимо, если новая таблица создается динамически. - Усечь: все строки из целевой таблицы будут удалены. |
No | true или false |
создать повторно truncate |
Скрипты SQL предобработки и постобработки | Укажите многострочные скрипты команд управления Kusto, которые будут выполняться до (предобработка) и после (постобработка) записи данных в базу данных-приемник. | Нет | Строка | preSQLs; postSQLs |
Время ожидания | Срок до истечения времени ожидания запроса. По умолчанию — 172 000 (2 дня) | No | Целое | timeout |
Примеры сценариев приемника Azure Data Explorer
Если используется набор данных Azure Data Explorer в качестве типа приемника, связанным сценарием потока данных будет:
IncomingStream sink(allowSchemaDrift: true,
validateSchema: false,
format: 'table',
preSQLs:['pre SQL scripts'],
postSQLs:['post SQL script'],
skipDuplicateMapInputs: true,
skipDuplicateMapOutputs: true) ~> AzureDataExplorerSink
Если используется встроенный набор данных, связанный сценарий потока данных будет следующим:
IncomingStream sink(allowSchemaDrift: true,
validateSchema: false,
format: 'table',
store: 'azuredataexplorer',
skipDuplicateMapInputs: true,
skipDuplicateMapOutputs: true) ~> AzureDataExplorerSink
Свойства действия поиска
Дополнительные сведения о свойствах см. в статье об действии поиска.
Связанный контент
Список хранилищ данных, поддерживаемых действием копирования в качестве источников и приемников, приведен в разделе Поддерживаемые хранилища данных.
Узнайте больше о том, как копировать данные из Фабрики данных Azure и Synapse Analytics в Azure Data Explorer.