Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Publiczne interfejsy API replikacji Fabric składają się z dwóch kategorii: (1) operacje CRUD dla replikowanego elementu bazy danych Fabric oraz (2) operacje uruchamiania/zatrzymywania i monitorowania. Podstawowa dokumentacja referencyjna online dla interfejsów API REST usługi Microsoft Fabric znajduje się w dokumentacji interfejsu API REST usługi Microsoft Fabric.
Uwaga
Te interfejsy API REST nie mają zastosowania do dublowanej bazy danych z usługi Azure Databricks.
Tworzenie dublowanej bazy danych
Interfejs API REST — Elementy — tworzenie dublowanej bazy danych
Przed utworzeniem dublowanej bazy danych potrzebne jest odpowiednie połączenie ze źródłem danych. Jeśli nie masz jeszcze połączenia, zapoznaj się z tematem Tworzenie nowego połączenia przy użyciu portalu i użyj tego identyfikatora połączenia w poniższej definicji. Możesz również skorzystać z interfejsu API REST do tworzenia nowych połączeń, aby utworzyć nowe połączenie przy użyciu Fabric REST APIs.
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases
Ciało:
{
"displayName": "Mirrored database 1",
"description": "A mirrored database description",
"definition": {
"parts": [
{
"path": "mirroring.json",
"payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
"payloadType": "InlineBase64"
}
]
}
}
Właściwość ładunku w poprzedniej treści JSON jest zakodowana w formacie Base64. Możesz użyć Base64 Encode and Decode do kodowania. Oryginalne przykłady definicji JSON dla różnych typów źródeł są następujące:
- Przykład definicji JSON Snowflake
- Przykład definicji JSON usługi Azure SQL Database
- Przykład definicji JSON usługi Azure SQL Managed Instance
- Przykład definicji JSON serwera elastycznego usługi Azure Database for PostgreSQL
- Przykład definicji JSON usługi Azure Cosmos DB
- Przykład definicji JSON otwartego mirrorowania
Jeśli chcesz replikować selektywne tabele zamiast wszystkich tabel w określonej bazie danych, zapoznaj się z przykładem definicji JSON replikowania określonych tabel.
Ważne
Aby dublować dane z usługi Azure SQL Database lub Azure SQL Managed Instance, przed rozpoczęciem dublowania należy również wykonać następujące czynności:
- Włącz tożsamość zarządzaną przypisaną przez system (SAMI) serwera logicznego Azure SQL lub usługi Azure SQL Managed Instance.
- Przyznaj uprawnienia SAMI do odczytu i zapisu do bazy danych lustrzanych. Obecnie należy to zrobić na portalu Fabric. Alternatywnie możesz przyznać rolę w obszarze roboczym SAMI przy użyciu interfejsu API dodawania przypisania roli w obszarze roboczym .
Uwaga
defaultSchema
właściwość wskazuje, czy replikować hierarchię schematu z źródłowej bazy danych.
Przykład definicji JSON w Snowflake
{
"properties": {
"source": {
"type": "Snowflake",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON usługi Azure SQL Database
{
"properties": {
"source": {
"type": "AzureSqlDatabase",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON usługi Azure SQL Managed Instance
{
"properties": {
"source": {
"type": "AzureSqlMI",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Definicja JSON przykładowego serwera elastycznego Azure Database dla PostgreSQL
{
"properties": {
"source": {
"type": "AzurePostgreSql",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON usługi Azure Cosmos DB
{
"properties": {
"source": {
"type": "CosmosDb",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON dublowanej bazy danych programu SQL Server 2025
Ta próbka dotyczy tylko Fabric Mirroring dla programu SQL Server 2025.
{
"properties": {
"source": {
"type": "SqlServer2025",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON dublowanej bazy danych programu SQL Server 2016-2022
Ten przykład dotyczy mirroringu fabrykowego dla SQL Server od wersji 2016 do 2022.
{
"properties": {
"source": {
"type": "MSSQL",
"typeProperties": {
"connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
"database": "xxxx"
}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON otwartego odwzorowania
{
"properties": {
"source": {
"type": "GenericMirror",
"typeProperties": {}
},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta"
}
}
}
}
Przykład definicji JSON replikowania określonych tabel
Poprzednie przykłady dotyczą scenariusza, który automatycznie replikuje wszystkie tabele w określonej bazie danych. Jeśli chcesz określić tabele do replikacji, możesz ustawić właściwość mountedTables
, jak w poniższym przykładzie.
{
"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"
}
}
}
]
}
}
Odpowiedź 201:
{
"id": "<mirrored database ID>",
"type": "MirroredDatabase",
"displayName": "Mirrored database 1",
"description": "A mirrored database description",
"workspaceId": "<your workspace ID>"
}
Usuwanie dublowanej bazy danych
Interfejs API REST — Elementy — usuwanie dublowanej bazy danych
Przykład:
DELETE https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>
Odpowiedź 200: (Brak treści)
Pobierz zduplikowaną bazę danych
Interfejs API REST — Elementy — uzyskiwanie dublowanej bazy danych
Przykład:
GET https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>
Odpowiedź 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"
}
}
Pobieranie definicji zmirorowanej bazy danych
Interfejs API REST — Elementy — uzyskiwanie definicji dublowanej bazy danych
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getDefinition
Odpowiedź 200:
{
"definition": {
"parts":[
{
"path": "mirroring.json",
"payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
"payloadType": "InlineBase64"
}
]
}
}
Lista dublowanych baz danych
Interfejs API REST - Elementy - Lista lustrzanych baz danych
Przykład:
GET https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases
Odpowiedź 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"
}
}
]
}
Aktualizowanie dublowanej bazy danych
Interfejs API REST — Elementy — aktualizowanie dublowanej bazy danych
Przykład:
PATCH https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>
Ciało:
{
"displayName": "MirroredDatabase's New name",
"description": "A new description for mirrored database."
}
Odpowiedź 200:
{
"displayName": "MirroredDatabase's New name",
"description": "A new description for mirrored database.",
"type": "MirroredDatabase",
"workspaceId": "<your workspace ID>",
"id": "<mirrored database ID>"
}
Aktualizowanie definicji dublowanej bazy danych
Interfejs API REST — Elementy — aktualizowanie definicji dublowanej bazy danych
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/updateDefinition
Ciało:
{
"definition": {
"parts": [
{
"path": "mirroring.json",
"payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
"payloadType": "InlineBase64"
}
]
}
}
Odpowiedź 200: (Brak treści)
Właściwość ładunku w poprzedniej treści JSON jest zakodowana w formacie Base64. Możesz użyć Base64 Encode and Decode do kodowania.
Uwaga
Ten interfejs API obsługuje dodawanie/usuwanie tabel przez odświeżanie właściwości mountedTables
. Obsługuje również aktualizację identyfikatora połączenia źródłowego, nazwy bazy danych i schematu domyślnego (te trzy właściwości można zaktualizować tylko wtedy, gdy interfejs API pobierania stanu lustrzanego zwraca Initialized
/Stopped
).
Konfigurowanie przechowywania danych
Okres przechowywania danych dublowanych można ustawić przy użyciu retentionInDays
właściwości . Wartość domyślna to siedem dni. Dozwolone wartości są liczbą całkowitą z zakresu od 1 do 30.
Przykład definicji JSON przed kodowaniem Base64:
{
"properties": {
"source": {...},
"target": {
"type": "MountedRelationalDatabase",
"typeProperties": {
"defaultSchema": "xxxx",
"format": "Delta",
"retentionInDays": 1
}
}
}
}
Uzyskiwanie stanu dublowania
Interfejs API REST — dublowanie — uzyskiwanie stanu dublowania
Ten interfejs API zwraca stan odzwierciedlonego wystąpienia bazy danych. Lista dostępnych stanów znajduje się w wartościach MirroringStatus.
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getMirroringStatus
Odpowiedź 200:
{
"status": "Running"
}
Rozpoczynanie dublowania
Interfejs API REST — dublowanie — rozpoczynanie dublowania
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/startMirroring
Odpowiedź 200: (Brak treści)
Uwaga
Nie można uruchomić mirroringu, gdy powyżej uzyskiwania stanu mirroringu API zwraca Initializing
stan.
Pobierz stan odzwierciedlania tabel
Interfejs API REST — dublowanie — uzyskiwanie stanu dublowania tabel
Jeśli funkcja lustrzanej synchronizacji jest uruchamiana i interfejs API pobierania stanu lustrzanej synchronizacji zwraca stan, ten interfejs API zwraca Running
stan i metryki replikacji tabel.
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getTablesMirroringStatus
Odpowiedź 200:
{
"continuationToken": null,
"continuationUri": null,
"data": [
{
"sourceSchemaName": "dbo",
"sourceTableName": "test",
"status": "Replicating",
"metrics": {
"processedBytes": 1247,
"processedRows": 6,
"lastSyncDateTime": "2024-10-08T05:07:11.0663362Z"
}
}
]
}
Zatrzymaj dublowanie
Interfejs API REST — dublowanie — zatrzymywanie dublowania
Przykład:
POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/stopMirroring
Odpowiedź 200: (Brak treści)
Uwaga
Po zatrzymaniu dublowania można wywołać interfejs API Uzyskiwanie stanu dublowania , aby wykonać zapytanie dotyczące stanu dublowania.
Microsoft Fabric .NET SDK
Zestaw .NET SDK, który obsługuje dublowanie w Fabric, jest dostępny w Microsoft Fabric .NET SDK. Wersja musi mieć wartość >= 1.0.0-beta.11.