Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Существует множество традиционных способов обмена данными, например через общие файловые ресурсы, FTP, электронную почту и API. Эти способы требуют, чтобы обе стороны создали и использовали конвейер данных, который перемещает данные между командами и организациями. С помощью Azure Data Explorer можно легко и безопасно делиться своими данными с людьми в вашей компании или с внешними партнерами. Общий доступ выполняется в режиме, близком к реальному времени, без необходимости создания или использования конвейера данных. Все изменения базы данных, включая схему и данные, на стороне поставщика мгновенно доступны на стороне потребителя.
Azure Data Explorer разделяет хранилище и вычисления, что позволяет клиентам запускать несколько вычислительных экземпляров (только для чтения) в одном и том же базовом хранилище. Можно присоединить базу данных как базу данных подписчиков, которая является базой данных только для чтения в удаленном кластере.
Настройка общего доступа к данным
Используйте Azure Data Share для отправки и управления приглашениями и общим доступом в компании или с внешними партнерами и клиентами. Azure Data Share использует базу данных подписчиков для создания символической связи между поставщиком и кластером Azure Data Explorer потребителя. Этот параметр предоставляет единую панель для просмотра и управления всеми вашими общими данными в кластерах Azure Data Explorer и других службах данных. Azure Data Share также позволяет совместно использовать данные между организациями в разных клиентах Microsoft Entra.
Примечание.
Администратор в обоих кластерах может настроить базу данных последователя напрямую с помощью различных интерфейсов API. Это полезно в сценариях, где требуется добавить ресурс вычисления для масштабирования при выполнении отчетности.
Вы можете настроить общий доступ к данным для:
- всей базы данных (по умолчанию);
- определенных таблиц — общий доступ на уровне таблиц.
Примечание.
Когда отношения использования общего доступа установлены, Azure Data Share создает символическую связь между поставщиком и кластером Azure Data Explorer потребителя. Если поставщик данных отменяет доступ, символическая связь удаляется, и общие базы данных больше не доступны для потребителя данных.
Поставщик данных может предоставлять общий доступ к данным на уровне базы данных или на уровне кластера. Кластер с общим доступом к базе данных является ведущим кластером, а кластер, участвующий в общем доступе, является кластером подписчика. Кластер подписчика может использовать одну или несколько баз данных ведущего кластера. Кластер подписчика периодически синхронизируется для проверки изменений. Время задержки между ведущим кластером и кластером-подписчиком варьируется от нескольких секунд до нескольких минут в зависимости от общего размера метаданных и данных. Данные кэшируются в кластере потребителя и доступны только для операций чтения или запросов, за исключением переопределения политики горячего кэширования и разрешений баз данных. Запросы, выполняемые в кластере подписчика, используют локальный кэш и не используют ресурсы ведущего кластера.
Необходимые компоненты
- Подписка Azure. Создайте бесплатную учетную запись Azure.
- Кластер и база данных Azure Data Explorer для лидера и подписчика. Создайте кластер и базу данных.
- База данных лидера должна содержать данные. Вы можете прием данных с помощью одного из методов, рассмотренных в обзоре приема.
Поток предоставления общего доступа к данным
- Поставщик использует свой ресурс Azure Data Share для предоставления общего доступа ко всей базе данных или определенной таблице, а также указывает адрес электронной почты получателя.
- Azure Data Share отправляет получателю по электронной почте приглашение со ссылкой.
- Получатель открывает сообщение с приглашением и выбирает ресурс Azure Data Share.
- С помощью Azure Data Share получатель сопоставляет общую базу данных или таблицу с соответствующим кластером.
Поставщик данных
Поставщик данных может предоставить получателю общий доступ ко всей базе данных или к определенной таблице.
Общий доступ ко всей базе данных
Следуйте инструкциям в видео, чтобы создать учетную запись Azure Data Share, добавить набор данных и отправить приглашение.
Общий доступ к таблицам
Для предоставления общего доступа к одной или нескольким таблицам с помощью Azure Data Share вы можете использовать шаблон Azure Resource Manager.
Чтобы предоставить общий доступ к таблицам, выполните следующие действия:
- Создайте шаблон и задайте соответствующие параметры набора данных и ограничения таблицы, а также укажите получателя приглашения. Используйте сведения, приведенные в следующей таблице, чтобы настроить шаблон.
Общие параметры
Параметр | Описание | Пример |
---|---|---|
accountName | Имя учетной записи Azure Data Share поставщика. | |
расположение | Расположение всех ресурсов. Руководитель и подписчик должны находиться в одном месте. | |
shareName | Имя общей папки, которая будет создана в учетной записи общего ресурса данных. | |
recipientEmail | Адрес электронной почты получателя Azure Data Share. |
Параметры базы данных
Параметр | Описание | Пример |
---|---|---|
databaseName | Имя базы данных поставщика. | |
databaseResourceId | Идентификатор ресурса базы данных поставщика. |
Параметры таблицы и представления
Параметр | Описание | Пример |
---|---|---|
внешниеТаблицыДляИсключения | Список внешних таблиц для исключения. Чтобы исключить все внешние таблицы, используйте ["*"]. | ["ExternalTable1ToExclude", "ExternalTable2ToExclude"] |
externalTablesToInclude | Список внешних таблиц для включения. Чтобы включить все внешние таблицы, начинающиеся с «Logs», используйте ["Logs*"]. | ["ExternalTable1ToInclude", "ExternalTable2ToInclude"] |
материализованныеПредставленияДляИсключения | Список исключаемых материализованных представлений. Чтобы исключить все материализованные представления, используйте ["*"]. | ["Mv11ToExclude", "Mv22ToExclude"] |
материализованный вид для включения | Список включаемых материализованных представлений. Чтобы включить все материализованные представления, начинающиеся с «Logs», используйте ["Logs*"]. | ["Mv1ToInclude", "Mv2ToInclude"] |
таблицыДляИсключения | Список исключаемых таблиц. Чтобы исключить все таблицы, используйте ["*"]. | ["table1ToExclude", "table2ToExclude"] |
таблицы для включения | Список включаемых таблиц. Чтобы включить все таблицы, используйте ["*"]. | ["table1ToInclude", "table2ToInclude"] |
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"accountName": { "type": "String" },
"location": { "defaultValue": "[resourceGroup().location]", "type": "String" },
"shareName": { "type": "String" },
"recipientEmail": { "type": "String" },
"databaseName": { "type": "String" },
"databaseResourceId": { "type": "String" },
"externalTablesToExclude": { "type": "Array" },
"externalTablesToInclude": { "type": "Array" },
"materializedViewsToExclude": { "type": "Array" },
"materializedViewsToInclude": { "type": "Array" },
"tablesToExclude": { "type": "Array" },
"tablesToInclude": { "type": "Array" }
},
"variables": {
"invitationSuffix": "[replace(replace(parameters('recipientEmail'),'@', '_'), '.', '_')]"
},
"resources": [
{
"type": "Microsoft.DataShare/accounts",
"apiVersion": "2021-08-01",
"name": "[parameters('accountName')]",
"location": "[parameters('location')]",
"identity": {
"type": "SystemAssigned"
},
"properties": {}
},
{
"type": "Microsoft.DataShare/accounts/shares",
"apiVersion": "2021-08-01",
"name": "[concat(parameters('accountName'), '/' , parameters('shareName'))]",
"dependsOn": [
"[resourceId('Microsoft.DataShare/accounts', parameters('accountName'))]"
],
"properties": {
"shareKind": "InPlace"
}
},
{
"type": "Microsoft.DataShare/accounts/shares/invitations",
"apiVersion": "2021-08-01",
"name": "[concat(parameters('accountName'), '/', parameters('shareName'), '/', concat(parameters('shareName'), variables('invitationSuffix')))]",
"dependsOn": [
"[resourceId('Microsoft.DataShare/accounts/shares', parameters('accountName'), parameters('shareName'))]",
"[resourceId('Microsoft.DataShare/accounts', parameters('accountName'))]"
],
"properties": {
"targetEmail": "[parameters('recipientEmail')]"
}
},
{
"type": "Microsoft.DataShare/accounts/shares/dataSets",
"apiVersion": "2021-08-01",
"name": "[concat(parameters('accountName'), '/', parameters('shareName'), '/', parameters('databaseName'))]",
"dependsOn": [
"[resourceId('Microsoft.DataShare/accounts/shares', parameters('accountName'), parameters('shareName'))]",
"[resourceId('Microsoft.DataShare/accounts', parameters('accountName'))]"
],
"kind": "KustoTable",
"properties": {
"kustoDatabaseResourceId": "[parameters('databaseResourceId')]",
"tableLevelSharingProperties": {
"externalTablesToExclude": "[parameters('externalTablesToExclude')]",
"externalTablesToInclude": "[parameters('externalTablesToInclude')]",
"materializedViewsToExclude": "[parameters('materializedViewsToExclude')]",
"materializedViewsToInclude": "[parameters('materializedViewsToInclude')]",
"tablesToExclude": "[parameters('tablesToExclude')]",
"tablesToInclude": "[parameters('tablesToInclude')]"
}
}
}
]
}
Разверните шаблон Azure Resource Manager с помощью портала Azure или PowerShell.
Потребитель данных — получение данных
Следуйте инструкциям в видео, чтобы принять приглашение, создать учетную запись для обмена данными и сопоставить ее с кластером потребителя.
Потребитель данных теперь может перейти в свой кластер Azure Data Explorer, чтобы предоставить пользователю разрешения для общих баз данных и доступ к данным. Данные, которые используют прием в очереди в исходном кластере Azure Data Explorer, будут отображаться в целевом кластере в течение нескольких секунд до нескольких минут.