Управление синхронизацией MySQL ClickPipe
В этом документе описывается, как управлять синхронизацией MySQL ClickPipe, когда ClickPipe находится в режиме CDC (Running).
Обзор
Архитектура ClickPipes для баз данных состоит из двух параллельных процессов — чтения (pull) из исходной базы данных и записи (push) в целевую базу данных. Процесс чтения управляется конфигурацией синхронизации, которая определяет, как часто данные должны забираться и какой объём данных должен забираться за один раз. Под «за один раз» подразумевается один батч, поскольку ClickPipe читает и записывает данные пакетами (батчами).
Существует два основных способа управлять синхронизацией MySQL ClickPipe. ClickPipe начинает выполнять запись, когда срабатывает одна из настроек, приведённых ниже.
Интервал синхронизации
Интервал синхронизации конвейера — это промежуток времени (в секундах), в течение которого ClickPipe будет забирать записи из исходной базы данных. В этот интервал не входит время, необходимое для записи данных в ClickHouse.
Значение по умолчанию — 1 минута. Интервал синхронизации может быть установлен в любое положительное целое значение, но рекомендуется устанавливать его более чем в 10 секунд.
Размер батча чтения
Размер батча чтения — это количество записей, которые ClickPipe будет забирать из исходной базы данных за один батч. Под записями подразумеваются операции вставки, обновления и удаления, выполненные над таблицами, которые входят в конвейер.
Значение по умолчанию — 100 000 записей. Безопасный максимум — 10 миллионов.
Исключение: Длительные транзакции на источнике
Когда транзакция выполняется в исходной базе данных, ClickPipe ждёт, пока не получит COMMIT этой транзакции, прежде чем продолжить. Это поведение переопределяет как интервал синхронизации, так и размер батча чтения.
Настройка параметров синхронизации
Вы можете задать интервал синхронизации и размер батча чтения при создании ClickPipe или при редактировании существующего. При создании ClickPipe эти параметры отображаются на втором шаге мастера создания, как показано ниже:

При редактировании существующего ClickPipe перейдите на вкладку Settings конвейера, приостановите конвейер и затем нажмите Configure здесь:

Откроется боковая панель с параметрами синхронизации, где вы сможете изменить интервал синхронизации и размер батча чтения:

Мониторинг поведения синхронизации
Вы можете увидеть, сколько времени занимает каждый батч, в таблице CDC Syncs на вкладке Metrics в ClickPipe. Обратите внимание, что указанная длительность включает время записи (push), а также, если входящих строк нет, ClickPipe ожидает, и время ожидания также включено в длительность.
