Репликация SQL-сервера
Майк Чаппл — ИТ-специалист с более чем 10-летним опытом работы в области кибербезопасности и обширными знаниями SQL и управления базами данных.
Репликация SQL Server позволяет администраторам баз данных распределять данные по нескольким серверам в организации. Вы можете захотеть внедрить репликацию в своей организации по ряду причин, таких как:
- Балансировки нагрузки. Репликация позволяет распространять данные на несколько серверов, а затем распределять нагрузку запросов между этими серверами.
- Автономная обработка. Репликация поддерживает манипулирование данными из вашей базы данных на машине, которая не всегда подключена к сети.
- Избыточность. Репликация позволяет создать отказоустойчивый сервер базы данных, готовый взять на себя вычислительную нагрузку в любой момент.
Любой сценарий репликации состоит из двух основных компонентов:
- Издатели есть данные, которые можно предложить другим серверам. У данной схемы репликации может быть один или несколько издателей.
- Подписчики — это серверы баз данных, которые хотят получать обновления от издателя при изменении данных.
Ничто не мешает одной системе действовать в обоих этих качествах. На самом деле, это часто проект крупномасштабных распределенных систем баз данных.
Поддержка SQL Server для репликации
Microsoft SQL Server поддерживает три типа репликации базы данных. В этой статье представлено краткое введение в каждую из этих моделей, а в следующих статьях они будут рассмотрены более подробно. Они есть:
- Репликация моментального снимка действует так, как следует из его названия. Издатель просто делает снимок всей реплицированной базы данных и делится им с подписчиками.Конечно, это очень трудоемкий и ресурсоемкий процесс. По этой причине большинство администраторов не используют повторяющуюся репликацию моментальных снимков для баз данных, которые часто изменяются. Существует два сценария, в которых обычно используется репликация моментальных снимков: во-первых, она используется для баз данных, которые редко изменяются. Во-вторых, он используется для установки базового уровня для установления репликации между системами, в то время как будущие обновления распространяются с использованием транзакционный или же репликация слиянием.
- Транзакционная репликация предлагает более гибкое решение для баз данных, которые регулярно изменяются. При репликации транзакций агент репликации отслеживает изменения базы данных издателя и передает эти изменения подписчикам. Эта передача может происходить немедленно или на периодической основе.
- Репликация слиянием позволяет издателю и подписчику независимо вносить изменения в базу данных. Оба объекта могут работать без активного сетевого подключения. При повторном подключении агент репликации слиянием проверяет наличие изменений в обоих наборах данных и соответствующим образом модифицирует каждую базу данных. Если изменения конфликтуют, агент использует предопределенный алгоритм разрешения конфликтов, чтобы определить соответствующие данные. Репликация слиянием обычно используется пользователями ноутбуков и другими пользователями, которые не могут постоянно подключаться к издателю.
Каждый из этих методов репликации служит полезной цели и хорошо подходит для конкретных сценариев баз данных.
Если вы работаете с SQL Server 2016, выберите выпуск в зависимости от ваших потребностей в репликации. Каждая редакция имеет разные возможности, когда речь идет о поддержке репликации:
- Только поддержка подписчиков: Экспресс, экспресс с инструментами или же Расширенные услуги и Интернет выпуски предлагают ограниченные возможности репликации, способные действовать только как клиент репликации.
- Полная поддержка издателей и подписчиков: Стандарт а также Предприятие предлагают полную поддержку, а Enterprise также включает публикацию Oracle, одноранговую репликацию транзакций и репликацию транзакций в виде обновляемой подписки.
Как вы, несомненно, уже поняли, возможности репликации SQL Server предлагают администраторам баз данных мощный инструмент для управления и масштабирования баз данных в корпоративной среде.