แชร์ผ่าน


Microsoft Fabric มิเรอร์ REST API สาธารณะ

API สาธารณะสําหรับการมิเรอร์ Fabric ประกอบด้วยสองประเภท: (1) การดําเนินการ CRUD สําหรับรายการฐานข้อมูลที่มิเรอร์ Fabric และ (2) การดําเนินการเริ่ม/หยุดและการตรวจสอบ เอกสารอ้างอิงออนไลน์หลักสําหรับ Microsoft Fabric REST API สามารถพบได้ใน การอ้างอิง Microsoft Fabric REST API

Note

REST API เหล่านี้ใช้ไม่ได้กับฐานข้อมูลที่มิเรอร์จาก 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 และ Decode เพื่อเข้ารหัส

ตัวอย่างคําจํากัดความ JSON ดั้งเดิมมีดังนี้ สําหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อกําหนดของข้อมูลฐานข้อมูลที่มิเรอร์ รวมถึงการแบ่งโครงสร้างข้อกําหนด ให้ดูที่ ข้อกําหนดของไอเท็มฐานข้อมูลที่มิเรอร์ คุณยังสามารถอ้างถึงคําจํากัดความของฐานข้อมูลมิเรอร์ที่มีอยู่ของคุณโดยการเรียก Get Mirrored Database Definition API

สําคัญ

เมื่อต้องการสะท้อนข้อมูลจาก Azure SQL Database, Azure SQL Managed Instance, Azure Database for PostgreSQL หรือ SQL Server 2025 คุณต้องทําสิ่งต่อไปนี้ก่อนเริ่มการสะท้อน:

  1. เปิดใช้งานข้อมูลประจําตัวที่มีการจัดการของเซิร์ฟเวอร์ลอจิคัล Azure SQL, อินสแตนซ์ที่มีการจัดการ Azure SQL, ฐานข้อมูล Azure สําหรับ PostgreSQL หรือ SQL Server
  2. ให้สิทธิ์การอ่านและเขียนข้อมูลประจําตัวที่มีการจัดการแก่ฐานข้อมูลมิเรอร์ ขณะนี้คุณต้องทําเช่นนี้บนพอร์ทัล Fabric หรือคุณสามารถให้บทบาทพื้นที่ทํางานข้อมูลประจําตัวที่มีการจัดการโดยใช้ API การกําหนดบทบาทพื้นที่ทํางาน

Note

ตั้งค่า deafultSchema คุณสมบัติเพื่อรักษาลําดับชั้น Schema ต้นทางในฐานข้อมูลมิเรอร์

ตัวอย่างคําจํากัดความ 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 และ Decode เพื่อเข้ารหัส

Note

API นี้รองรับการเพิ่ม/ลบตารางโดยการรีเฟรชคุณสมบัติmountedTables นอกจากนี้ยังรองรับการอัปเดตรหัสการเชื่อมต่อต้นทาง ชื่อฐานข้อมูล และสคีมาเริ่มต้น (คุณสมบัติทั้งสามนี้สามารถอัปเดตได้ก็ต่อเมื่อ Get mirroring status 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: (ไม่มีร่างกาย)

Note

ไม่สามารถเริ่มการสะท้อนได้เมื่อ API รับสถานะการสะท้อนด้านบน ส่งคืน Initializing สถานะ

รับสถานะการสะท้อนตาราง

REST API - การสะท้อน - รับสถานะการสะท้อนตาราง

หากการสะท้อนเริ่มต้นและ Get Mirroring status 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: (ไม่มีร่างกาย)

Note

หลังจากหยุดการสะท้อนแล้ว คุณสามารถเรียกใช้ Get Mirroring Status API เพื่อสอบถามสถานะการสะท้อน

Microsoft Fabric .NET SDK

.NET SDK ที่สนับสนุนการสะท้อน Fabric พร้อมใช้งานที่ Microsoft Fabric .NET SDK เวอร์ชันต้องเป็น >= 1.0.0-beta.11