Delen via


Openbare REST API van Microsoft Fabric spiegelen

De openbare API's voor Fabric-spiegeling bestaan uit twee categorieën: (1) CRUD-bewerkingen voor gespiegelde fabricdatabase-item en (2) Start-/stop- en bewakingsbewerkingen. De primaire online referentiedocumentatie voor Microsoft Fabric REST API's vindt u in Microsoft Fabric REST API-verwijzingen.

Opmerking

Deze REST API's zijn niet van toepassing op gespiegelde databases van Azure Databricks.

Gespiegelde database maken

REST API - Items - Gespiegelde database maken

Voordat u een gespiegelde database maakt, is de bijbehorende gegevensbronverbinding nodig. Als u nog geen verbinding hebt, raadpleegt u een nieuwe verbinding via de portal en gebruikt u die verbindings-id in de volgende definitie. U kunt ook verwijzen naar het maken van een nieuwe REST API voor verbindingen om een nieuwe verbinding te maken met rest API's van Fabric.

Voorbeeld:

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

Tekst:

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

De payload eigenschap in de vorige JSON-hoofdtekst is Base64 gecodeerd. U kunt Base64-codering en -decoderen gebruiken om te coderen.

De oorspronkelijke JSON-definitievoorbeelden zijn als volgt. Zie De definitie van het gespiegelde database-item, inclusief een uitsplitsing van de definitiestructuur, voor meer informatie over de definitiedefinitie voor gespiegelde database-items. U kunt ook verwijzen naar de definitie van uw bestaande gespiegelde database door de DEFINITIE-API voor gespiegelde database aan te roepen.

Belangrijk

Als u gegevens uit Azure SQL Database, Azure SQL Managed Instance, Azure Database for PostgreSQL of SQL Server 2025 wilt spiegelen, moet u ook het volgende doen voordat u begint met spiegelen:

  1. Schakel door het systeem toegewezen beheerde identiteit (SAMI) van uw logische Azure SQL-server, Azure SQL Managed Instance, Azure Database for PostgreSQL of SQL Server in.
  2. Ververleent de SAMI lees- en schrijfmachtiging aan de gespiegelde database. Op dit moment moet u dit doen in de Fabric-portal. U kunt ook de SAMI-werkruimterol verlenen met behulp van de API voor roltoewijzing van werkruimte toevoegen.

Opmerking

Stel de deafultSchema eigenschap in om de bronschemahiërarchie in de gespiegelde database te behouden.

Voorbeeld van JSON-definitie van het repliceren van hele database

Alle tabellen uit de brondatabase spiegelen:

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

Voorbeeld van JSON-definitie van het repliceren van opgegeven tabellen

Als u selectieve tabellen uit de brondatabase wilt spiegelen, kunt u de mountedTables eigenschap opgeven zoals in het volgende voorbeeld.

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

Antwoord 201:

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

Gespiegelde database verwijderen

REST API - Items - Gespiegelde database verwijderen

Voorbeeld:

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

Antwoord 200: (Geen hoofdtekst)

Gespiegelde database ophalen

REST API - Items - Gespiegelde database ophalen

Voorbeeld:

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

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

Gespiegelde databasedefinitie ophalen

REST API - Items - Definitie van gespiegelde database ophalen

Voorbeeld:

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

Antwoord 200:

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

Gespiegelde databases weergeven

REST API - Items - Gespiegelde databases weergeven

Voorbeeld:

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

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

Gespiegelde database bijwerken

REST API - Items - Gespiegelde database bijwerken

Voorbeeld:

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

Tekst:

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

Antwoord 200:

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

Gespiegelde databasedefinitie bijwerken

REST API - Items - Definitie van gespiegelde database bijwerken

Voorbeeld:

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

Tekst:

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

Antwoord 200: (Geen hoofdtekst)

De nettoladingeigenschap in de vorige JSON-hoofdtekst is Base64 gecodeerd. U kunt Base64-codering en -decoderen gebruiken om te coderen.

Opmerking

Deze API ondersteunt het toevoegen/verwijderen van tabellen door de mountedTables eigenschap te vernieuwen. Het biedt ook ondersteuning voor het bijwerken van de bronverbindings-id, databasenaam en standaardschema (deze drie eigenschappen kunnen alleen worden bijgewerkt wanneer de status-API voor spiegeling wordt opgehaald Initialized/Stopped).

Gegevensretentie configureren

U kunt de bewaarperiode voor gespiegelde gegevens instellen met behulp van de retentionInDays eigenschap. De standaardwaarde is zeven dagen. De toegestane waarden zijn geheel getal tussen 1 en 30.

Voorbeeld van JSON-definitie vóór Base64-codering:

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

Mirroringstatus ophalen

REST API - Spiegeling - Status van spiegeling ophalen

Deze API retourneert de status van een gespiegeld database-exemplaar. De lijst met beschikbare statussen wordt weergegeven bij de waarden van MirroringStatus.

Voorbeeld:

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

Antwoord 200:

{
    "status": "Running"
}

Spiegeling starten

REST API - Spiegeling - Spiegeling starten

Voorbeeld:

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

Antwoord 200: (Geen hoofdtekst)

Opmerking

Spiegeling kan niet worden gestart wanneer boven De API voor spiegelingsstatus ophalen de status retourneert Initializing .

De status van tabellen spiegelen ophalen

REST API - Spiegeling - Status van spiegeling van tabellen ophalen

Als spiegeling wordt gestart en de status-API voor spiegeling ophalen de status retourneert Running , retourneert deze API de status en metrische gegevens van de replicatie van tabellen.

Voorbeeld:

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

Antwoord 200:

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

Spiegeling stoppen

REST API - Spiegelen - Spiegelen stoppen

Voorbeeld:

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

Antwoord 200: (Geen hoofdtekst)

Opmerking

Nadat u spiegeling hebt gestopt, kunt u de status-API Voor spiegeling ophalen aanroepen om de status van de spiegeling op te vragen.

Microsoft Fabric .NET SDK

De .NET SDK die ondersteuning biedt voor Fabric-spiegeling is beschikbaar bij Microsoft Fabric .NET SDK. De versie moet = 1.0.0-beta.11 zijn >.