Настройка репликации
Предусловия
Настройка репликации доступна пользователю с ролью APPADMIN.
Последовательность выполнения
Для настройки репликации:
- Редактируйте свойства источника или потребителя данных.
- Редактируйте свойства модуля;
- Тестируйте модуль.
Редактирование свойств источника или потребителя данных
Для просмотра информации о соединении нажмите прямоугольник со скругленными углами. Откроется информация об элементе:
- Имя - название соединения;
- Идентификатор - ID элемента графа;
- Описание - описание соединения;
- Тип - тип соединения:
- База данных;
- Очередь;
- Драйвер - путь до драйвера соединения (только для соединения типа БД);
- Опции - дополнительные параметры соединения в формате json.
Для редактирования свойств источника/потребителя данных:
-
Нажмите соединение на графе.

-
Нажмите Редактировать в открывшемся окне Соединение.

-
Выберите соединение в раскрывающемся списке в открывшемся окне Редактирование свойств источника/потребителя данных:
- Source для источника данных;
- Queue для передатчика данных;
- Target для потребителя данных.

-
Нажмите Сохранить.
Редактирование свойств модуля
Для просмотра информации о модуле нажмите на прямоугольник с острыми углами. Откроется информация об элементе:
| модуль Capture | модуль Applier |
|---|---|
| - Имя модуля; - Идентификатор; - Конфигурация; - Метка; - Задержка перед сбросом подтверждения; - Интервал между сбросами подтверждения; - Связанные процессы; - Параметр по захвату DDL изменений; - Статус — содержит кнопки старта, принудительного перезапуска, остановки, старта с позиции (при выставленных значениях задержки перед сбросом подтверждения и интервала между сбросами); - Маппинг. | - Имя модуля; - Идентификатор; - Конфигурация; - Метка; - Отложенное применение; - Параметр по управлению функцией переупорядочивания операций в транзакции; - Параметр по применению DDL изменений; - Связанные процессы; - Статус — содержит кнопки старта, принудительного перезапуска, остановки, старта с позиции; - Маппинг. |
Редактирование свойств модуля Capture
-
Нажмите модуль на графе.

-
Нажмите Редактировать в открывшемся окне Модуль.

-
Введите имя модуля в открывшемся окне Редактирование свойств модуля.
подсказкаПо умолчанию в поле Имя модуля отображается имя, заданное при создании схемы графа.

-
Выберите конфигурацию модуля в раскрывающемся списке:
подсказкаПо умолчанию в поле Конфигурация отображается конфигурация, заданная при создании схемы графа).
-
При необходимости присвойте модулю метку.
-
Задайте задержку перед сбросом подтверждения и интервал между сбросами подтверждения в секундах, чтобы асинхронная репликация шла с задержкой:
подсказкаРежимы репликации описаны в подразделе Отображение режима репликации.
- задержка перед сбросом подтверждения — время между тем, как изменения были записаны в приемник, и тем, как процесс посылает источнику подтверждения о получении изменений;
- интервал между сбросами подтверждения — заданное количество секунд, через которое процесс посылает источнику подтверждения о получении изменений.
Чем больше значения задержки и интервала, тем больше будет история изменений.
-
Включите функцию захвата DDL изменений для репликации DDL операций

-
Нажмите Сохранить.
Редактирование свойств модуля Applier
-
Нажмите модуль на графе.

-
Нажмите Редактировать в открывшемся окне Модуль.

-
Введите имя модуля в открывшемся окне Редактирование свойств модуля.
подсказкаПо умолчанию в поле Имя модуля отображается имя, заданное при создании схемы графа).

-
Выберите конфигурацию модуля в раскрывающемся списке:
подсказкаПо умолчанию в поле Конфигурация отображается конфигурация, заданная при создании схемы графа).
-
При необходимости присвойте модулю метку.
-
Задайте в секундах задержку применения изменений в БД приемника, чтобы репликация из Kafka в БД приемника шла с задержкой:
примечаниеЗадержка применения отсчитывается от времени операции в БД источника, а не от запуска графа. Например, если в поле Отложенное применение ввести 60 секунд, затем добавить данные в БД источника и запустить граф 20 секунд спустя, то модуль Applier применит изменения в БД приемника через 40 секунд после запуска графа.
примечаниеНа модуле Applier отображается значок ◷, если настроено отложенное применение:

-
Включите переупорядочивание операций в транзакции для оптимизации последовательности транзакций. Смена порядка транзакций повышает скорость записи на 30-50%.

-
Включите функцию применения DDL изменений для репликации DDL операций

-
Нажмите Сохранить.
Редактирование маппинга
-
Нажмите модуль Capture или Applier на графе репликации.

-
Нажмите Редактировать в поле Маппинг в открывшемся окне Модуль.

-
Нажмите Визуальный редактор в открывшемся окне Редактирование маппинга.
подсказка- Редактирование JSON описано в разделе Соединения.
- Работа визуального редактора описана в разделе Настройка маппинга.
Тестирование модуля
Для проверки корректности созданного модуля перед запуском репликации:
Валидация модуля включает в себя валидацию соединений модуля (левое и правое) и конфигурации, которую модуль содержит. Конфигурация проверяется только для той БД, с которой модуль соединен. Так модуль применения содержит конфигурацию для приемника, а модуль захвата - для источника, поэтому рекомендуется проверить оба модуля.
-
Нажмите модуль на графе.

-
Нажмите Тестировать в открывшемся окне Модуль.
примечаниеКнопка тестирования активна только, когда граф не запущен.
Если модуль настроен неверно, появится уведомление об ошибке валидации с описанием ошибки.
Результат
Репликация настроена.
Отображение режима репликации
В GraDeLy есть три режима репликации:
| Режим | Описание | Где настраивается |
|---|---|---|
| Синхронный | изменения применяются только после того, как запишутся в журнал предзаписи хотя бы одной реплики | На стороне источника администратором БД (подробнее в «Руководстве администратора», разделе «Использование приложения оператором», Настройка синхронной репликации в PostgreSQL, Настройка синхронной репликации через DropApp) |
| Асинхронный | изменения сначала применяются, и только потом фиксируются в журнале предзаписи реплики | По умолчанию в GraDeLy репликация асинхронна |
| Асинхронный с задержкой | подтверждение источнику отправляется только через некоторое время после того, как будут получены векторы изменений | На стенде за счет настройки задержки перед сбросом подтверждения и интервала между сбросами подтверждения (подробнее в Редактировании свойств модуля) |
При синхронной репликации на модуле захвата отображается пиктограмма :

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