Определение зеркальной базы данных

В этой статье приводится разбивка структуры определения для зеркальных элементов базы данных.

Части определения

В этой таблице перечислены части определения зеркальной базы данных.

Путь к части определения Тип Обязательно Описание
mirroring.json MirroredDatabase Описание зеркального элемента базы данных
.platform PlatformDetails Описание метаданных элемента

Часть определения зеркального элемента базы данных создается следующим образом:

MirroredDatabase

Описывает элемент зеркальной базы данных.

Имя Тип Обязательно Описание
source SourceProperties правда Описывает свойства типа источника.
target Целевые свойства правда Описывает свойства целевого типа.
mountedTables MountedTable[] неправда Выводит список таблиц, которые будут зеркально отображаться из исходной базы данных. (Если это свойство не указано, все таблицы будут зеркально отображаться. Новые таблицы также будут автоматически добавлены в репликацию.)

Свойства источника

Описывает базу данных-источник для зеркального отображения.

Имя Тип Обязательно Описание
type Тип источника правда Тип исходной базы данных.
typeProperties SourceTypeProperties правда Свойства для исходного подключения, например connectionи database т. д.

Тип источника

Последние значения для исходного типа (с течением времени могут добавляться дополнительные типы источников).):

Имя Описание
Snowflake Представляет источник Snowflake.
AzureSqlDatabase Представляет источник базы данных SQL Azure.
AzureSqlMI Представляет источник управляемого экземпляра SQL Azure.
AzurePostgreSql Представляет источник Azure PostgreSQL.
CosmosDb Представляет источник Cosmos DB.
SqlServer2025 Представляет источник SQL Server 2025.
MSSQL Представляет источник Microsoft SQL Server 2016-2022.
GenericMirror Представляет открытый источник зеркального отображения.

SourceTypeProperties

Описывает свойства типа источника.

Имя Тип Обязательно Описание
connection Гид неправда Идентификатор подключения для исходной базы данных. Не требуется для GenericMirror типа источника.
database Струна неправда Название исходной базы данных. Не требуется для GenericMirrorтипов AzureSqlMIAzureSqlDatabaseисточников, или AzurePostgreSql для типов источников.

Целевые свойства

Описывает свойства целевого типа.

Имя Тип Обязательно Описание
type Струна правда Тип целевого объекта (в настоящее время поддерживается только MountedRelationalDatabase ).
typeProperties TargetTypeProperties правда Свойства целевого объекта, например defaultSchema и format.

TargetTypeProperties (Свойства TargetType)

Описывает свойства целевого объекта.

Имя Тип Обязательно Описание
defaultSchema Струна неправда Схема по умолчанию для целевого объекта.
format Струна правда Формат целевого объекта (в настоящее время поддерживается только Delta ).

Подключеннаяtable

Описывает таблицу для зеркального отображения из исходной базы данных.

Имя Тип Обязательно Описание
source MountedTableSourceProperties правда Свойства исходной таблицы, например schemaName и tableName.

MountedTableSourceProperties

Описывает свойства исходной таблицы.

Имя Тип Обязательно Описание
typeProperties MountedTableSourceTypeProperties правда Свойства типа исходной таблицы.

MountedTableSourceTypeProperties

Описывает свойства типа исходной таблицы.

Имя Тип Обязательно Описание
schemaName Струна правда Имя схемы исходной таблицы.
tableName Струна правда Имя таблицы источника.

пример mirroring.json

Чтобы узнать, как создать JSON-файл, описывающий зеркальный элемент базы данных для различных источников, см. зеркальные определения базы данных для различных источников.

{
    "properties": {
        "source": {
            "type": "Snowflake",
            "typeProperties": {
                "connection": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
                "database": "TESTDB"
            }
        },
        "target": {
            "type": "MountedRelationalDatabase",
            "typeProperties": {
                "defaultSchema": "dbo",
                "format": "Delta"
            }
        },
        "mountedTables": [
            {
                "source": {
                    "typeProperties": {
                        "schemaName": "dbo",
                        "tableName": "testtable"
                    }
                }
            }
        ]
    }
}

Пример определения

Ниже приведен пример определения зеркальной базы данных в кодировке Base64, где содержимое из mirroring.json примера кодируется в Base64 и помещается в payload поле с заданным значением пути mirroring.json:

{
  "displayName": "myMirroredDatabase",
  "type": "MirroredDatabase",
  "description": "Create Mirrored Database item with definition",
  "definition": {
    "parts": [
      {
        "path": "mirroring.json",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      },
      {
        "path": ".platform",
        "payload": "<base64 encoded string>",
        "payloadType": "InlineBase64"
      }
    ]
  }
}