Подключение BladePipe к ClickHouse
BladePipe — это инструмент сквозной интеграции данных в режиме реального времени с задержкой менее секунды, обеспечивающий бесшовный поток данных между различными платформами.
ClickHouse — один из готовых коннекторов BladePipe, что позволяет пользователям автоматически интегрировать данные из различных источников в ClickHouse. На этой странице показано, как пошагово настроить загрузку данных в ClickHouse в режиме реального времени.
Поддерживаемые источники
В настоящее время BladePipe поддерживает интеграцию данных в ClickHouse из следующих источников:
- MySQL/MariaDB/AuroraMySQL
- Oracle
- PostgreSQL/AuroraPostgreSQL
- MongoDB
- Kafka
- PolarDB-MySQL
- OceanBase
- TiDB
В дальнейшем планируется поддержка дополнительных источников.
Загрузите и запустите BladePipe
-
Войдите в BladePipe Cloud.
-
Следуйте инструкциям в разделах Install Worker (Docker) или Install Worker (Binary), чтобы загрузить и установить BladePipe Worker.
Также вы можете загрузить и развернуть BladePipe Enterprise.
Добавление ClickHouse в качестве целевого хранилища
- BladePipe поддерживает ClickHouse версии
20.12.3.3и выше. - Чтобы использовать ClickHouse в качестве целевого хранилища, убедитесь, что у пользователя есть привилегии SELECT, INSERT и базовые DDL-привилегии.
-
В BladePipe выберите "DataSource" > "Add DataSource".
-
Выберите
ClickHouseи заполните настройки, указав хост и порт ClickHouse, имя пользователя и пароль, затем нажмите "Test Connection".
-
Нажмите "Add DataSource" внизу, после чего будет добавлен экземпляр ClickHouse.
Добавление MySQL в качестве источника
В этом руководстве мы используем экземпляр MySQL в качестве источника и рассматриваем процесс загрузки данных MySQL в ClickHouse.
Чтобы использовать MySQL в качестве источника, убедитесь, что у пользователя есть необходимые права доступа.
-
В BladePipe нажмите "DataSource" > "Add DataSource".
-
Выберите
MySQLи заполните настройки, указав хост и порт MySQL, имя пользователя и пароль, затем нажмите "Test Connection".
-
Нажмите "Add DataSource" внизу — экземпляр MySQL будет добавлен.
Создание конвейера
-
В BladePipe нажмите "DataJob" > "Create DataJob".
-
Выберите добавленные инстансы MySQL и ClickHouse и нажмите "Test Connection", чтобы убедиться, что BladePipe может к ним подключиться. Затем выберите базы данных, которые нужно перенести.

-
Для типа DataJob выберите "Incremental" вместе с опцией "Full Data".

-
Выберите таблицы для репликации.

-
Выберите столбцы для репликации.

-
Подтвердите создание DataJob — после этого он запустится автоматически.

Проверка данных
- Остановите запись данных в экземпляр MySQL и дождитесь завершения слияния данных в ClickHouse.
Примечание
Поскольку время автоматического слияния в ClickHouse непредсказуемо, вы можете запустить слияние вручную, выполнив команду
OPTIMIZE TABLE xxx FINAL;. Обратите внимание, что ручное слияние может завершиться неудачно.
В качестве альтернативы можно выполнить команду CREATE VIEW xxx_v AS SELECT * FROM xxx FINAL;, чтобы создать представление и выполнять запросы к нему для гарантии полного слияния данных.
:::
- Создайте задание проверки данных (Verification DataJob). После завершения задания проверьте результаты, чтобы убедиться, что данные в ClickHouse идентичны данным в MySQL.
