Перейти к основному содержанию
Вы можете использовать ClickHouse, а точнее clickhouse-local, как ETL-инструмент для миграции данных из вашей текущей системы баз данных в ClickHouse Cloud, если для этой системы баз данных доступен либо предоставляемый ClickHouse движок интеграции, либо табличная функция, либо JDBC driver или ODBC driver от поставщика системы. Иногда мы называем этот метод миграции методом “pivot”, поскольку он использует промежуточную точку для переноса данных из исходной базы данных в целевую. Например, этот метод может потребоваться, если по требованиям безопасности из частной или внутренней сети разрешены только исходящие соединения. В таком случае нужно сначала извлечь данные из исходной базы данных с помощью clickhouse-local, а затем отправить их в целевую базу данных ClickHouse, где clickhouse-local выступает в роли промежуточного звена. ClickHouse предоставляет движки интеграции и табличные функции (которые на лету создают движки интеграции) для MySQL, PostgreSQL, MongoDB и SQLite. Для всех остальных популярных систем баз данных у их поставщиков доступны JDBC driver или ODBC driver.

Что такое clickhouse-local?

Обычно ClickHouse запускается в виде кластера, где несколько экземпляров движка базы данных ClickHouse работают в распределённом режиме на разных серверах. На одном сервере движок базы данных ClickHouse запускается как часть программы clickhouse-server. Доступ к базе данных (пути, пользователи, параметры безопасности, …) настраивается в файле конфигурации сервера. Инструмент clickhouse-local позволяет использовать движок базы данных ClickHouse изолированно как утилиту командной строки для сверхбыстрой обработки SQL-данных с большим объёмом входных и выходных данных без необходимости настраивать и запускать сервер ClickHouse.

Установка clickhouse-local

Вам понадобится хост для clickhouse-local с сетевым доступом как к вашей текущей исходной базе данных, так и к целевому сервису ClickHouse Cloud. На этом хосте загрузите подходящую сборку clickhouse-local в зависимости от операционной системы вашего компьютера:
  1. Самый простой способ загрузить clickhouse-local — выполнить следующую команду:
  1. Запустите clickhouse-local (он просто выведет свою версию):
ВажноВо всех примерах в этом руководстве используются команды Linux для запуска clickhouse-local (./clickhouse-local). Чтобы запустить clickhouse-local на Mac, используйте ./clickhouse local.
Добавьте удалённую систему в IP Access List вашего сервиса ClickHouse CloudЧтобы функция remoteSecure могла подключиться к вашему сервису ClickHouse Cloud, IP-адрес удалённой системы должен быть разрешён в IP Access List. Разверните раздел Управление вашим IP Access List под этой подсказкой, чтобы получить дополнительную информацию.
В списке сервисов ClickHouse Cloud выберите сервис, с которым будете работать, и перейдите в раздел Settings. Если в IP Access List нет IP-адреса или диапазона IP-адресов удалённой системы, которой нужно подключиться к вашему сервису ClickHouse Cloud, это можно исправить с помощью Add IPs:Добавьте отдельный IP-адрес или диапазон адресов, которым нужно подключаться к вашему сервису ClickHouse Cloud. При необходимости измените поля формы, а затем нажмите Save.

Пример: миграция из MySQL в ClickHouse Cloud с использованием движка Integration

Мы будем использовать табличный движок интеграции (динамически создаваемый с помощью табличной функции mysql) для чтения данных из исходной базы данных MySQL, а табличную функцию remoteSecure — для записи данных в целевую таблицу в вашем сервисе ClickHouse Cloud.

На целевом сервисе ClickHouse Cloud:

Создайте базу данных в пункте назначения:

Создайте целевую таблицу со схемой, соответствующей таблице MySQL:

Схема целевой таблицы ClickHouse Cloud и схема исходной таблицы MySQL должны быть согласованы (имена и порядок столбцов должны совпадать, а типы данных столбцов — быть совместимыми).

На хост-машине с clickhouse-local:

Запустите clickhouse-local с запросом для миграции:

На хост-машине clickhouse-local данные не хранятся локально. Вместо этого они считываются из исходной таблицы MySQL и сразу записываются в целевую таблицу сервиса ClickHouse Cloud.
Последнее изменение 12 июня 2026 г.