Κοινοποίηση μέσω


Το Microsoft Fabric κατοπτρίζει το δημόσιο REST API

Τα δημόσια API για τον κατοπτρισμό Fabric αποτελούνται από δύο κατηγορίες: (1) λειτουργίες CRUD για στοιχείο βάσης δεδομένων κατοπτρισμού Fabric και (2) λειτουργίες έναρξης/διακοπής και παρακολούθησης. Μπορείτε να βρείτε την κύρια ηλεκτρονική τεκμηρίωση αναφοράς για τα API REST του Microsoft Fabric στις αναφορές Microsoft Fabric REST API.

Σημείωμα

Αυτά τα API REST δεν ισχύουν για κατοπτριζόμενη βάση δεδομένων από το Azure Databricks.

Δημιουργία βάσης δεδομένων ειδώλου

REST API - Στοιχεία - Δημιουργία βάσης δεδομένων κατοπτρισμού

Πριν δημιουργήσετε βάση δεδομένων ειδώλου, απαιτείται η αντίστοιχη σύνδεση αρχείου προέλευσης δεδομένων. Εάν δεν έχετε ακόμα σύνδεση, ανατρέξτε στην ενότητα δημιουργία νέας σύνδεσης χρησιμοποιώντας πύλη και χρησιμοποιήστε αυτό το αναγνωριστικό σύνδεσης στον ακόλουθο ορισμό. Μπορείτε επίσης να ανατρέξετε στη δημιουργία νέας σύνδεσης REST API για να δημιουργήσετε νέα σύνδεση χρησιμοποιώντας Fabric REST API.

Παράδειγμα:

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

Η payload ιδιότητα στο προηγούμενο σώμα JSON είναι κωδικοποιημένη με Base64. Μπορείτε να χρησιμοποιήσετε το Base64 Encode and Decode για κωδικοποίηση.

Τα αρχικά παραδείγματα ορισμού JSON έχουν ως εξής. Για περισσότερες πληροφορίες σχετικά με τον ορισμό κατοπτριζόμενου στοιχείου βάσης δεδομένων, συμπεριλαμβανομένης μιας ανάλυσης της δομής ορισμού, ανατρέξτε στο θέμα Ορισμός κατοπτριζόμενου στοιχείου βάσης δεδομένων. Μπορείτε επίσης να ανατρέξετε στον ορισμό της υπάρχουσας βάσης δεδομένων ειδώλου καλώντας το API ορισμού βάσης δεδομένων Get mirrored.

Σημαντικό

Για να αντικατοπτρίσετε δεδομένα από τη βάση δεδομένων SQL Azure, τη διαχειριζόμενη παρουσία SQL Azure, τη βάση δεδομένων Azure για PostgreSQL ή τον SQL Server 2025, πρέπει επίσης να κάνετε τα εξής πριν ξεκινήσετε τον κατοπτρισμό:

  1. Ενεργοποιήστε τη διαχειριζόμενη ταυτότητα του λογικού διακομιστή SQL Azure, της διαχειριζόμενης παρουσίας Azure SQL, της βάσης δεδομένων Azure για PostgreSQL ή του SQL Server.
  2. Εκχωρήστε στη διαχειριζόμενη ταυτότητα δικαίωμα ανάγνωσης και εγγραφής στη βάση δεδομένων κατοπτρισμού. Αυτήν τη στιγμή πρέπει να το κάνετε αυτό στην πύλη Fabric. Εναλλακτικά, μπορείτε να εκχωρήσετε τον ρόλο χώρου εργασίας διαχειριζόμενης ταυτότητας χρησιμοποιώντας το API ανάθεσης ρόλου προσθήκης χώρου εργασίας.

Σημείωμα

Ορίστε την deafultSchema ιδιότητα για να διατηρήσετε την ιεραρχία σχήματος προέλευσης στη βάση δεδομένων κατοπτρισμού.

Παράδειγμα ορισμού JSON αναπαραγωγής ολόκληρης της βάσης δεδομένων

Για να αντικατοπτρίσετε όλους τους πίνακες από τη βάση δεδομένων προέλευσης:

{
    "properties": {
        "source": {
            "type": "<your source type>",
            "typeProperties": {
                "connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
                "database": "xxxx"
            }
        },
        "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 Encode and Decode για κωδικοποίηση.

Σημείωμα

Αυτό το API υποστηρίζει την προσθήκη/κατάργηση πινάκων ανανεώνοντας την mountedTables ιδιότητα. Υποστηρίζει επίσης την ενημέρωση του αναγνωριστικού σύνδεσης προέλευσης, του ονόματος βάσης δεδομένων και του προεπιλεγμένου σχήματος (αυτές οι τρεις ιδιότητες μπορούν να ενημερωθούν μόνο όταν επιστρέψει Initialized/το API 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

Το .NET SDK που υποστηρίζει κατοπτρισμό Fabric είναι διαθέσιμο στο Microsoft Fabric .NET SDK. Η έκδοση πρέπει να είναι >= 1.0.0-beta.11.