Поделиться через


Настройка именованных реплик гипермасштабирования и управление ими

Применимо к:База данных SQL Azure

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

Создание именованной реплики с гипермасштабированием

В следующих примерах сценариев вы создадите именованную реплику WideWorldImporters_NamedReplica для базы данных WideWorldImportersс помощью портал Azure, T-SQL, PowerShell или Azure CLI.

В следующем примере создается именованной реплики WideWorldImporters_NamedReplica для базы данных WideWorldImporters с помощью T-SQL. Первичная реплика использует цель уровня обслуживания HS_Gen5_4, а именованная реплика — HS_Gen5_2. Оба используют один и тот же логический сервер с именем contosoeast.

  1. На портале Azure просмотрите все ресурсы SQL Azure и найдите базу данных, для которой нужно создать именованную реплику.

  2. На странице базы данных SQL выберите базу данных, прокрутите страницу управления данными, выберите "Реплики" и нажмите кнопку "Создать реплику".

    Снимок экрана, показывающий шаг создания именованной реплики.

  3. Выберите именованную реплику в разделе Конфигурация реплики. Выберите существующий сервер или создайте новый сервер для именованной реплики. При необходимости введите имя базы данных именованных реплик и настройте параметры вычислений и хранилища .

    Снимок экрана: конфигурация именованной реплики.

  4. При необходимости настройте зонально-избыточную гипермасштабированную именованную реплику. Для получения дополнительной информации см. раздел "Избыточность зоны в именованных репликах Azure SQL Database Hyperscale".

    1. На странице "Настройка базы данных" выберите "Да ", чтобы сделать эту зону базы данных избыточной?
    2. Добавьте в конфигурацию по крайней мере одну вторичную реплика высокой доступности.
    3. Нажмите кнопку "Применить".
  5. Выберите "Просмотр и создание", просмотрите сведения и нажмите кнопку "Создать".

  6. Начинается процесс развертывания именованной реплики.

    Снимок экрана, показывающий статус развертывания именованной реплики.

  7. После завершения развертывания именованной реплики отображается его состояние.

    Снимок экрана: состояние именованной реплики после развертывания.

  8. Вернитесь на страницу базы данных-источника и выберите " Реплики". Ваш именованный реплика перечислен под заголовком Именованные реплики.

    Скриншот, показывающий первичную и именованную реплику базы данных SQL.

Так как перемещение данных не требуется, в большинстве случаев именованная реплика будет создана всего за минуту. После того как именованной реплики будет доступна, она будет отображаться из портал Azure или любого средства командной строки, например AZ CLI или PowerShell. Именованную реплику можно использовать в качестве обычной базы данных только для чтения.

Подключение к именованной реплике с гипермасштабированием

Чтобы подключиться к именованной реплике с гипермасштабированием, необходимо использовать строка подключения для этой именованной реплики, ссылаясь на его имена сервера и базы данных. Нет необходимости указывать параметр ApplicationIntent=ReadOnly , так как именованные реплики всегда доступны только для чтения.

Как и для реплик высокого уровня доступности, даже если первичные, высокой доступности и именованные реплики совместно используют одни и те же данные на одном наборе серверов страниц, кэши данных на каждой именованной реплике хранятся в синхронизации с первичной. Синхронизация поддерживается службой журналов транзакций, которая перенаправляет записи журналов из первичной в именованные реплики. В результате в зависимости от рабочей нагрузки, обрабатываемой именованной репликой, приложение записей журнала может происходить с разными скоростями, и поэтому разные реплики могут иметь разные задержки данных относительно первичной реплики.

Изменение именованной реплики с гипермасштабированием

Цель уровня обслуживания именованной реплики можно определить с помощью ALTER DATABASE команды или любого другого поддерживаемого способа (портал, AZ CLI, PowerShell). Если вам потребуется изменить целевой уровень обслуживания после создания именованной реплики, это можно сделать с помощью команды ALTER DATABASE ... MODIFY в самой именованной реплике.

В следующем примере WideWorldImporters_NamedReplica — именованной репликой WideWorldImporters базы данных.

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

Снимок экрана, показывающий обновление цели уровня обслуживания для именованных реплик.

Удаление именованной реплики с гипермасштабированием

Чтобы удалить именованную реплику с гипермасштабированием, удалите ее так же, как и обычную базу данных.

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

Снимок экрана, показывающий удаление именованной реплики.

Внимание

Именованные реплики автоматически удаляются при удалении первичной реплики, из которой они были созданы.

Оптимизация конфигурации именованной реплики

Рекомендуется настроить именованную реплику с тем же размером вычислительных ресурсов (виртуальными ядрами), что и первичная реплика. Если основная реплика испытывает большую нагрузку на записи, именованная реплика с меньшими вычислительными ресурсами может не успевать за ней, что приводит к задержке репликации. Чтобы сохранить соглашения об уровне обслуживания восстановления, скорость журнала транзакций первичного источника может быть временно сокращена, чтобы вторичные источники могли наверстать упущенное.

Если вы решили создать именованную реплику с размером вычислительных ресурсов (виртуальными ядрами), отличным от основного экземпляра, отслеживайте частоту операций ввода-вывода журнала на первичном экземпляре в течение времени. Это помогает оценить минимальный размер вычислительных ресурсов, необходимых для именованной реплики для поддержания нагрузки репликации. Для получения дополнительной информации рассмотрите следующие объекты:

  • Динамическая управляющая функция (DMF) sys.dm_hs_database_log_rate() предоставляет дополнительные сведения, которые помогут в понимании снижения скорости журнала, если имеется. Он может указать, какая конкретная вторичная реплика отстает в применении записей журналов и общий размер неприменённого журнала транзакций.
  • Чтобы получить исторические данные журнала ввода-вывода, используйте представление sys.resource_stats.
  • Для последних данных журнала ввода-вывода с более высокой степенью детализации, которая лучше отражает краткосрочные пики, используйте sys.dm_db_resource_stats.

Дополнительные сведения см. в статье о диагностике производительности гипермасштабирования базы данных SQL Azure.