Предварительные требования
- Доступ к вашей исходной базе данных PostgreSQL с пользователем, у которого есть права на репликацию.
- Сервис ClickHouse Managed Postgres в качестве целевого сервиса для миграции. Если у вас его ещё нет, см. руководство по быстрому старту.
- На локальной машине должны быть установлены
pg_dumpиpsql. Оба входят в стандартный набор клиентских инструментов PostgreSQL.
Что нужно учитывать перед миграцией
- Распространение DDL: непрерывная репликация (CDC) фиксирует операции DML и
ADD COLUMN. Другие изменения DDL, такие какDROP COLUMNиALTER COLUMN, не распространяются и должны применяться вручную на целевой стороне.
Шаг 1: Подключитесь к исходной базе данных
- Начальная загрузка + CDC — копирует существующие данные, а затем поддерживает синхронизацию целевой системы с последующими изменениями.
- Только начальная загрузка — однократное копирование без дальнейшей репликации.
- Только CDC — пропускает первоначальное копирование и реплицирует только новые изменения, начиная с этого момента.
Шаг 2: Экспортируйте схему вашей базы данных
pg_dump, уже заполненную сведениями о подключении к исходной базе данных. Выполните её в терминале:
pg.sql в вашем текущем каталоге.
Нажмите Next.
Шаг 3: Импортируйте схему в сервис Managed Postgres
psql, чтобы применить дамп схемы к вашему сервису Managed Postgres. Выполните её в терминале:
Шаг 4: Настройка параметров ингестии
| Параметр | По умолчанию | Описание |
|---|---|---|
| Интервал синхронизации (секунды) | 10 | Как часто опрашивается слот репликации |
| Параллельные потоки для первоначальной загрузки | 4 | Количество потоков для этапа пакетной загрузки |
| Размер батча Pull | 100,000 | Количество строк, получаемых за один батч репликации |
| Количество строк в снимке на партицию | 100000 | Размер партиции для снимков больших таблиц |
| Количество таблиц в снимке, обрабатываемых параллельно | 1 | Количество таблиц, для которых одновременно создаются снимки |