Del via


Microsoft Fabric-speiling av offentlig REST-API

De offentlige API-ene for Fabric-speiling består av to kategorier: (1) CRUD-operasjoner for Fabric-speilet databaseelement og (2) Start/stopp- og overvåkingsoperasjoner. Den primære nettbaserte referansedokumentasjonen for Microsoft Fabric REST API-er finner du i Microsoft Fabric REST API-referanser.

Note

Disse REST-API-ene gjelder ikke for speilede databaser fra Azure Databricks.

Opprett speilet database

REST API - Elementer - Opprett speilet database

Før du oppretter en speilet database, må du ha den tilsvarende datakildetilkoblingen. Hvis du ikke har en tilkobling ennå, kan du se opprette ny tilkobling ved hjelp av portalen og bruke denne tilkoblings-ID-en i definisjonen nedenfor. Du kan også se opprette ny tilkobling REST API for å opprette ny tilkobling ved hjelp av Fabric REST API-er.

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases

Kropp:

{
    "displayName": "Mirrored database 1",
    "description": "A mirrored database description",
    "definition": {
        "parts": [
            {
                "path": "mirroring.json",
                "payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

Egenskapen payload i forrige JSON-brødtekst er Base64-kodet. Du kan bruke Base64 Encode and Decode til å kode.

De originale JSON-definisjonseksemplene er som følger. Hvis du vil ha mer informasjon om definisjonen av det speilede databaseelementet, inkludert en oversikt over definisjonsstrukturen, kan du se Definisjon av speilet databaseelement. Du kan også referere til definisjonen av den eksisterende speilede databasen ved å kalle API-en for definisjon av Hent speilet database.

Viktig!

Hvis du vil speile data fra Azure SQL Database, Azure SQL Managed Instance, Azure Database for PostgreSQL eller SQL Server 2025, må du også gjøre følgende før du starter speiling:

  1. Aktiver den administrerte identiteten til din Azure SQL logiske server, Azure SQL Managed Instance, Azure Database for PostgreSQL eller SQL Server.
  2. Gi den administrerte identiteten lese- og skrivetillatelse til den speilede databasen. For øyeblikket må du gjøre dette på Fabric-portalen. Alternativt kan du gi den administrerte identitetsarbeidsplassrollen ved å bruke Add Workspace Role Assignment API.

Note

Angi egenskapen deafultSchema for å bevare kildeskjemahierarkiet i den speilede databasen.

JSON-definisjonseksempel på replikering av hele databasen

Slik speiler du alle tabellene fra kildedatabasen:

{
    "properties": {
        "source": {
            "type": "<your source type>",
            "typeProperties": {
                "connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
                "database": "xxxx"
            }
        },
        "target": {
            "type": "MountedRelationalDatabase",
            "typeProperties": {
                "defaultSchema": "xxxx",
                "format": "Delta"
            }
        }
    }
}

Eksempel på JSON-definisjon for replikering av spesifiserte tabeller

Hvis du vil speile selektive tabeller fra kildedatabasen, kan du angi egenskapen mountedTables som i eksemplet nedenfor.

{
    "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"
                    }
                }
            }
        ]
    }
}

Svar 201:

{ 
    "id": "<mirrored database ID>", 
    "type": "MirroredDatabase", 
    "displayName": "Mirrored database 1", 
    "description": "A mirrored database description", 
    "workspaceId": "<your workspace ID>" 
} 

Slett speilet database

REST API - Elementer - Slett speilet database

Eksempel:

DELETE https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>

Svar 200: (Ingen kropp)

Få speilet database

REST API - Elementer - Få speilet database

Eksempel:

GET https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>

Svar 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"
    }
}

Få speilet databasedefinisjon

REST API - Elementer - Få speilet databasedefinisjon

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getDefinition

Svar 200:

{ 
    "definition": { 
        "parts":[ 
            { 
                "path": "mirroring.json", 
                "payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0", 
                "payloadType": "InlineBase64" 
            } 
        ] 
    } 
} 

Liste over speilede databaser

REST API - Elementer - Vis speilede databaser

Eksempel:

GET https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases

Svar 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"
            }
        }
    ] 
} 

Oppdater speilet database

REST API - Elementer - Oppdater speilet database

Eksempel:

PATCH https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>

Kropp:

{
    "displayName": "MirroredDatabase's New name",
    "description": "A new description for mirrored database."
}

Svar 200:

{
    "displayName": "MirroredDatabase's New name",
    "description": "A new description for mirrored database.",
    "type": "MirroredDatabase",
    "workspaceId": "<your workspace ID>",
    "id": "<mirrored database ID>"
}

Oppdatere definisjonen av speilet database

REST API - Elementer - Oppdater speilet databasedefinisjon

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/updateDefinition

Kropp:

{ 
  "definition": { 
    "parts": [ 
      { 
        "path": "mirroring.json", 
        "payload": "eyAicHJvcGVydGllcy..WJsZSIgfSB9IH0gXSB9IH0", 
        "payloadType": "InlineBase64" 
      } 
    ] 
  } 
}

Svar 200: (Ingen kropp)

Nyttelastegenskapen i forrige JSON-brødtekst er Base64-kodet. Du kan bruke Base64 Encode and Decode til å kode.

Note

Denne API-en støtter å legge til/fjerne tabeller ved å oppdatere egenskapen mountedTables . Den støtter også oppdatering av kildetilkoblings-ID, databasenavn og standardskjema (disse tre egenskapene kan bare oppdateres når API-en Hent speilingsstatus returnerer Initialized/Stopped).

Konfigurere dataoppbevaring

Du kan angi oppbevaringsperioden for speilede data ved hjelp av egenskapen retentionInDays . Standardverdien er sju dager. De tillatte verdiene er heltall mellom 1 og 30.

JSON-definisjonseksempel før Base64-koding:

{
    "properties": {
        "source": {...},
        "target": {
            "type": "MountedRelationalDatabase",
            "typeProperties": {
                "defaultSchema": "xxxx",
                "format": "Delta",
                "retentionInDays": 1
            }
        }
    }
}

Få speilstatus

REST API - Speiling - Få speilingsstatus

Denne API-en returnerer statusen for speilet databaseforekomst. Listen over tilgjengelige statuser er angitt ved verdiene for MirroringStatus.

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getMirroringStatus

Svar 200:

{
    "status": "Running"
}

Begynn å speile

REST API - Speiling - Start speiling

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/startMirroring

Svar 200: (Ingen kropp)

Note

Speiling kan ikke startes når API-en for Hent speilingsstatus returnerer Initializing statusen ovenfor.

Få status for speiling av tabeller

REST API – Speiling – Få status for tabellspeiling

Hvis speiling startes og API-en Hent speilingsstatus returnerer Running status, returnerer denne API-en statusen og måledataene for tabellreplikering.

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/getTablesMirroringStatus

Svar 200:

{
    "continuationToken": null,
    "continuationUri": null,
    "data": [
        {
            "sourceSchemaName": "dbo",
            "sourceTableName": "test",
            "status": "Replicating",
            "metrics": {
                "processedBytes": 1247,
                "processedRows": 6,
                "lastSyncDateTime": "2024-10-08T05:07:11.0663362Z"
            }
        }
    ]
}

Stopp speiling

REST API - Speiling - Stopp speiling

Eksempel:

POST https://api.fabric.microsoft.com/v1/workspaces/<your workspace ID>/mirroredDatabases/<mirrored database ID>/stopMirroring

Svar 200: (Ingen kropp)

Note

Når du har stoppet speilingen, kan du kalle API-en Hent speilingsstatus for å spørre etter speilstatusen.

Microsoft Fabric .NET SDK

.NET SDK som støtter Fabric Mirroring, er tilgjengelig på Microsoft Fabric .NET SDK. Versjonen må være >= 1.0.0-beta.11.