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


Конфигурация сервера: время подтверждения записи в группе высокой доступности (мс)

Предварительная версия SQL Server 2025 (17.x)

availability group commit time Используйте параметр конфигурации сервера для указания времени фиксации транзакции в миллисекундах для реплики группы доступности Always On.

Замечание

Параметр availability group commit time конфигурации сервера доступен начиная с предварительной версии SQL Server 2025 (17.x).

Обзор

Изменения, внесенные внутри транзакции, не отображаются вне транзакции, пока транзакция не будет зафиксирована. Определение зафиксированной транзакции для группы доступности AlwaysOn включает все синхронные вторичные реплики в группе доступности, подтверждающие закрепленную фиксацию. После выполнения коммита на первичной реплике эта информация должна быть быстро передана по сети ко всем вторичным репликам.

Так как SQL Server использует ведение журнала транзакций перед записью для поддержания свойств транзакции ACID, изменения сначала записываются в журнал транзакций в виде блоков журналов. Эти блоки журнала отправляются, а затем применяются к журналу транзакций всех вторичных реплик.

Чтобы повысить производительность и уменьшить задержку в SQL Server 2016 (13.x) и более поздних версиях, SQL Server использует задержку в 10 миллисекунд в попытке заполнить блоки журналов группы доступности Always On несколькими фиксациями перед отправкой во вторичные реплики.

Предварительная версия SQL Server 2025 (17.x) представляет availability group commit time параметр конфигурации сервера для указания времени фиксации коммита группы в миллисекундах для реплики группы доступности. Для бизнес-сценариев, когда значение по умолчанию в 10 миллисекундах слишком длинное, этот параметр дает SQL Server возможность группировать несколько фиксаций в пакеты в меньшем количестве блоков журналов.

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

  • В загруженных системах группировка коммитов приводит к тому, что блоки журналов заполняются большим количеством транзакций, что помогает избежать перегрузки сети и издержек, связанных с применением большого числа мелких блоков журналов на вторичной реплике.
  • Тем не менее, существует задержка в 10 миллисекунд перед применением транзакции к вторичной копии, что может вызвать проблемы в некоторых бизнес-сценариях.

Для бизнес-сценариев, когда значение по умолчанию 10 миллисекунда слишком длинное, можно изменить availability group commit time параметр конфигурации сервера на более низкое значение, чтобы транзакции отправлялись во вторичную реплику быстрее.

Замечания

  • Значение по умолчанию 0 указывает, что SQL Server использует 10 мс в качестве времени фиксации группы доступности по умолчанию.

  • Параметр availability group commit time конфигурации сервера доступен, когда показать расширенные параметры установлено на 1.