Каждый экземпляр ClickHouse Managed Postgres имеет встроенные возможности CDC для любого из ваших сервисов ClickHouse. Это позволяет перенести часть или все данные из вашего экземпляра Postgres в ClickHouse, а изменения данных в Postgres будут непрерывно, почти в реальном времени, отражаться в ClickHouse. В основе этой возможности лежит ClickPipes.
Чтобы воспользоваться этой функцией, нажмите Синхронизация с ClickHouse на боковой панели вашего экземпляра Postgres.

Нажмите Replicate data in ClickHouse, чтобы начать настройку ClickPipe.
Настройте сервис репликации
Заполните параметры репликации:
- Integration name: имя этого ClickPipe
- ClickHouse service: выберите существующий сервис ClickHouse или создайте новый
- Postgres database: исходная база данных, из которой будет выполняться репликация
- Replication method: выберите один из вариантов:
- Initial load + CDC: импортировать существующие данные и поддерживать таблицы в актуальном состоянии по мере появления новых изменений (рекомендуется)
- Initial load only: однократный снимок существующих данных без дальнейших обновлений
- CDC only: пропустить начальный снимок и фиксировать только новые изменения в дальнейшем

Нажмите Next, чтобы продолжить.
Настройте параметры репликации
Точно настройте параметры репликации данных:
- Sync interval (seconds): как часто изменения подтягиваются из Postgres (по умолчанию: 60)
- Parallel threads for initial load: количество потоков, используемых во время начального снимка (по умолчанию: 4)
- Pull batch size: количество строк, получаемых за один батч во время репликации (по умолчанию: 100000)
- Snapshot number of rows per partition: количество строк на партицию во время начального снимка (по умолчанию: 100000)
- Snapshot number of tables in parallel: количество таблиц, для которых снимки создаются параллельно (по умолчанию: 1)

Нажмите Next, чтобы продолжить.
Выберите таблицы для репликации
Выберите целевую базу данных и укажите, какие таблицы нужно реплицировать:
- Destination database: выберите существующую базу данных ClickHouse или создайте новую
- Prefix default destination table names with schema name: добавляет имя схемы Postgres в качестве префикса, чтобы избежать конфликтов имён
- Preserve NULL values from source: сохраняет значения NULL вместо преобразования в значения по умолчанию для типа. Этот параметр применяется ко всем таблицам в пайпе и не может быть изменён после создания пайпа.
- Remove deleted rows during merges: для таблиц ReplacingMergeTree физически удаляет помеченные как удалённые строки во время фоновых слияний
Раскройте схемы и выберите отдельные таблицы для репликации. Вы также можете настроить имена целевых таблиц и параметры столбцов.

Нажмите Replicate data to ClickHouse, чтобы запустить репликацию.
Отслеживайте ClickPipe
После запуска ClickPipe он появится в том же меню. Создание начального снимка всех данных может занять некоторое время в зависимости от размера ваших таблиц.

Нажмите на имя интеграции, чтобы просмотреть подробный status, отслеживать прогресс, просматривать ошибки и управлять ClickPipe. См. Lifecycle of a Postgres ClickPipe, чтобы понять, в каких состояниях может находиться ваш ClickPipe.