Репликация представляет собой процесс копирования данных между базами данных, находящимися на том же сервере баз данных или на других серверах, связанных посредством LAN, WAN или Internet. В репликации MS SQL Server используются следующие термины: 

Термин

Определение

Издатель

Сервер (база данных), которая посылает данные на другой сервер (в базу данных)

Распространитель

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

Подписчик

Сервер (база данных), которая получает данные от другого сервера (базы данных)

Публикация

Совокупность статей, которые посылаются подписчику

Статья

Основной модуль репликации: таблица или подмножество таблицы

Подписка

Группа данных, которые получает подписчик

База данных распространителя

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


По умолчанию вместе с MS SQL Server Express сервис репликации не устанавливается.


MS SQL Server Express не может использоваться в качестве издателя или распространителя.

В распределенной архитектуре ПК Авто-Интеллект целесообразно использовать репликацию с топологией «Центральный подписчик». В этом случае несколько серверов – издателей (например, установленных на постах ДПС) копируют данные на центральный сервер – подписчик.

Поскольку требуется перемещать данные между серверами баз данных, рекомендуется использовать репликацию транзакций. Данный тип репликации также предпочтителен в случае, если копируемые данные часто изменяются, размер копируемых данных достаточно велик и нет необходимости поддерживать автономные изменения реплицируемых данных относительно издателя и подписчика. Все описанные условия выполняются в распределенной архитектуре ПК Авто-Интеллект.

При репликации транзакций используются следующие агенты:

  1. Агент моментальных снимков. Создает файлы снимков базы данных, хранит снимки на распространителе и производит запись информации о состоянии синхронизации снимков в базу данных распространителя.
  2. Агент чтения журналов. Транслирует транзакции, отмеченные для репликации, из журнала транзакций, находящегося на издателе, в базу данных распространителя.
  3. Агент распространителя. Транслирует обрабатывающие снимки задания из базы данных распространителя подписчикам; транслирует все транзакции, ожидающие распределения, подписчикам.