Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Общедоступные API для зеркального отображения Fabric состоят из двух категорий: (1) операции CRUD для элемента зеркальной базы данных Fabric и (2) Операции запуска и остановки и мониторинга. Основная справочная документация для REST API Microsoft Fabric доступна в разделе Справочники по REST API Microsoft Fabric.
Примечание.
Эти интерфейсы REST API не применяются к отражённой базе данных из Azure Databricks.
Создание зеркальной базы данных
REST API — элементы — создание зеркальной базы данных
Перед созданием зеркальной базы данных требуется соответствующее подключение к источнику данных. Если у вас еще нет подключения, перейдите к созданию нового подключения с помощью портала и используйте этот идентификатор подключения в следующем определении. Вы также можете использовать создать REST API нового подключения для создания нового подключения с помощью REST API Fabric.
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases
Основной текст:
{
"displayName": "Mirrored database 1",
"description": "A mirrored database description",
"definition": {
"parts": [
{
"path": "mirroring.json",
"payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
"payloadType": "InlineBase64"
}
]
}
}
Свойство нагрузки в предыдущем теле JSON закодировано с использованием Base64. Для кодирования можно использовать кодировку Base64 и декодирование . Исходные примеры определения JSON для различных типов источников:
- Пример определения JSON Для Snowflake
- Пример определения JSON базы данных SQL Azure
- Пример определения JSON управляемого экземпляра SQL Azure
- Пример определения JSON Базы данных Azure для гибкого сервера PostgreSQL
- Пример определения JSON в Azure Cosmos DB
- Пример определения JSON для открытого зеркального отображения
Если вы хотите реплицировать выборочные таблицы вместо всех таблиц в указанной базе данных, обратитесь к примеру определения JSON для репликации указанных таблиц.
Внимание
Для зеркального отображения данных из Базы данных SQL Azure, Управляемого экземпляра SQL Azure, Базы данных Azure для PostgreSQL или SQL Server 2025 необходимо выполнить следующие действия перед началом зеркального отображения:
- Включите управляемое удостоверение, назначаемое системой (SAMI) для логического сервера SQL Azure, управляемого экземпляра SQL Azure, базы данных Azure для PostgreSQL или SQL Server.
- Предоставьте разрешение на чтение и запись SAMI зеркальной базе данных. Сейчас это необходимо сделать на портале Fabric. Кроме того, можно предоставить роль рабочей области SAMI с помощью API добавления назначения ролей рабочей области.
Примечание.
свойство defaultSchema
указывает, следует ли реплицировать иерархию схем из исходной базы данных.
Пример определения JSON для Snowflake
{
"properties": {
"source": {
"type": "Snowflake",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример определения JSON для базы данных Azure SQL
{
"properties": {
"source": {
"type": "AzureSqlDatabase",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример JSON-определения для Управляемого экземпляра Azure SQL
{
"properties": {
"source": {
"type": "AzureSqlMI",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример JSON-определения гибкого сервера Azure Database для PostgreSQL.
{
"properties": {
"source": {
"type": "AzurePostgreSql",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример определения JSON в Azure Cosmos DB
{
"properties": {
"source": {
"type": "CosmosDb",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример определения JSON зеркальной базы данных SQL Server 2025
Этот пример применяется только к зеркалированию Fabric для SQL Server 2025.
{
"properties": {
"source": {
"type": "SqlServer2025",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример определения JSON зеркальной базы данных SQL Server 2016-2022
В этом примере применяется зеркальное отображение структуры для SQL Server 2016-2022.
{
"properties": {
"source": {
"type": "MSSQL",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример определения JSON для открытого зеркального отображения
{
"properties": {
"source": {
"type": "GenericMirror",
"typeProperties": {}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Пример определения JSON для репликации указанных таблиц
Предыдущие примеры применяются к сценарию, который автоматически реплицирует все таблицы в указанной базе данных. Если вы хотите указать таблицы для репликации, можно указать mountedTables
свойство, как показано в следующем примере.
{
"properties": {
"source": {
"type": "<your source type>",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
},
"mountedTables": [
{
"source": {
"typeProperties": {
"schemaName": "xxxx",
"tableName": "xxxx"
}
}
}
]
}
}
Ответ 201:
{
"id": "<mirrored database ID>",
"type": "MirroredDatabase",
"displayName": "Mirrored database 1",
"description": "A mirrored database description",
"workspaceId": "<your workspace ID>"
}
Удаление зеркальной базы данных
REST API — элементы — удаление зеркальной базы данных
Пример:
DELETE https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>
Ответ 200: (без тела)
Получение зеркальной базы данных
REST API — элементы — получение зеркальной базы данных
Пример:
GET https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>
Ответ 200:
{
"displayName": "Mirrored database 1",
"description": "A mirrored database description.",
"type": "MirroredDatabase",
"workspaceId": "<your workspace ID>",
"id": "<mirrored database ID>",
"properties": {
"oneLakeTablesPath": "https://onelake.dfs.fabric.microsoft.com/<your workspace ID>/<mirrored database ID>/Tables",
"sqlEndpointProperties": {
"connectionString": "xxxx.xxxx.fabric.microsoft.com",
"id": "b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2",
"provisioningStatus": "Success"
},
"defaultSchema": "xxxx"
}
}
Получение определения зеркальной базы данных
REST API — элементы — получение зеркального определения базы данных
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getDefinition
Ответ 200:
{
"definition": {
"parts":[
{
"path": "mirroring.json",
"payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
"payloadType": "InlineBase64"
}
]
}
}
Отобразить зеркальные базы данных
REST API — элементы — список зеркальных баз данных
Пример:
GET https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases
Ответ 200:
{
"value": [
{
"displayName": "Mirrored database 1",
"description": "A mirrored database description.",
"type": "MirroredDatabase",
"workspaceId": "<your workspace ID>",
"id": "<mirrored database ID>",
"properties": {
"oneLakeTablesPath": "https://onelake.dfs.fabric.microsoft.com/<your workspace ID>/<mirrored database ID>/Tables",
"sqlEndpointProperties": {
"connectionString": "xxxx.xxxx.fabric.microsoft.com",
"id": "b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2",
"provisioningStatus": "Success"
},
"defaultSchema": "xxxx"
}
}
]
}
Обновление зеркальной базы данных
REST API — элементы — обновленная зеркальная база данных
Пример:
PATCH https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>
Основной текст:
{
"displayName": "MirroredDatabase's New name",
"description": "A new description for mirrored database."
}
Ответ 200:
{
"displayName": "MirroredDatabase's New name",
"description": "A new description for mirrored database.",
"type": "MirroredDatabase",
"workspaceId": "<your workspace ID>",
"id": "<mirrored database ID>"
}
Обновление определения зеркальной базы данных
REST API — элементы — обновление зеркального определения базы данных
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/updateDefinition
Основной текст:
{
"definition": {
"parts": [
{
"path": "mirroring.json",
"payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
"payloadType": "InlineBase64"
}
]
}
}
Ответ 200: (без тела)
Свойство нагрузки в предыдущем теле JSON закодировано с использованием Base64. Для кодирования можно использовать кодировку Base64 и декодирование .
Примечание.
Этот API поддерживает добавление и удаление таблиц путем обновления mountedTables
свойства. Он также поддерживает обновление идентификатора исходного подключения, имени базы данных и схемы по умолчанию (эти три свойства можно обновить только при возврате API зеркального состоянияInitialized
/Stopped
).
Настройка хранения данных
Срок хранения зеркальных данных можно задать с помощью retentionInDays
свойства. Значение по умолчанию составляет семь дней. Допустимые значения являются целыми числами от 1 до 30.
Пример определения JSON перед кодировкой Base64:
{
"properties": {
"source": {...},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta",
"retentionInDays": 1
}
}
}
}
Узнать состояние зеркального отображения
REST API — зеркальное отображение — получение состояния зеркального отображения
Этот API возвращает состояние зеркального экземпляра базы данных. Список доступных состояний предоставляется по значениям MirroringStatus.
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getMirroringStatus
Ответ 200:
{
"status": "Running"
}
Начать зеркалирование
REST API — зеркальное отображение — начало зеркального отображения
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/startMirroring
Ответ 200: (без тела)
Примечание.
Запуск отражения невозможен, когда вышеупомянутый API получения статуса отражения возвращает статус Initializing
.
Получите статус зеркалирования таблиц
REST API — зеркальное отображение — получение состояния зеркального отображения таблиц
Если выполняется зеркальное отображение и API получения статуса зеркального отображения возвращает статус Running
, этот API возвращает состояние и метрики репликации таблиц.
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getTablesMirroringStatus
Ответ 200:
{
"continuationToken": null,
"continuationUri": null,
"data": [
{
"sourceSchemaName": "dbo",
"sourceTableName": "test",
"status": "Replicating",
"metrics": {
"processedBytes": 1247,
"processedRows": 6,
"lastSyncDateTime": "2024-10-08T05:07:11.0663362Z"
}
}
]
}
Прекратить зеркальное отображение
REST API — зеркальное отображение — остановка зеркального отображения
Пример:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/stopMirroring
Ответ 200: (без тела)
Примечание.
После остановки зеркального отображения можно вызвать API получения статуса зеркального отображения, чтобы узнать его статус.
Microsoft Fabric .NET SDK
Пакет SDK для .NET, поддерживающий зеркальное отображение Fabric, доступен в пакете SDK для Microsoft Fabric .NET. Версия должна быть >= 1.0.0-beta.11.