Перейти к основному содержанию
Перейти к основному содержанию

Подключение BladePipe к ClickHouse

Partner Integration

BladePipe — это инструмент сквозной интеграции данных в режиме реального времени с задержкой менее секунды, обеспечивающий бесшовный поток данных между различными платформами.

ClickHouse — один из готовых коннекторов BladePipe, что позволяет пользователям автоматически интегрировать данные из различных источников в ClickHouse. На этой странице показано, как пошагово настроить загрузку данных в ClickHouse в режиме реального времени.

Поддерживаемые источники

В настоящее время BladePipe поддерживает интеграцию данных в ClickHouse из следующих источников:

  • MySQL/MariaDB/AuroraMySQL
  • Oracle
  • PostgreSQL/AuroraPostgreSQL
  • MongoDB
  • Kafka
  • PolarDB-MySQL
  • OceanBase
  • TiDB

В дальнейшем планируется поддержка дополнительных источников.

Загрузите и запустите BladePipe

  1. Войдите в BladePipe Cloud.

  2. Следуйте инструкциям в разделах Install Worker (Docker) или Install Worker (Binary), чтобы загрузить и установить BladePipe Worker.

Примечание

Также вы можете загрузить и развернуть BladePipe Enterprise.

Добавление ClickHouse в качестве целевого хранилища

Примечание
  1. BladePipe поддерживает ClickHouse версии 20.12.3.3 и выше.
  2. Чтобы использовать ClickHouse в качестве целевого хранилища, убедитесь, что у пользователя есть привилегии SELECT, INSERT и базовые DDL-привилегии.
  1. В BladePipe выберите "DataSource" > "Add DataSource".

  2. Выберите ClickHouse и заполните настройки, указав хост и порт ClickHouse, имя пользователя и пароль, затем нажмите "Test Connection".

    Добавление ClickHouse в качестве целевого хранилища
  3. Нажмите "Add DataSource" внизу, после чего будет добавлен экземпляр ClickHouse.

Добавление MySQL в качестве источника

В этом руководстве мы используем экземпляр MySQL в качестве источника и рассматриваем процесс загрузки данных MySQL в ClickHouse.

Примечание

Чтобы использовать MySQL в качестве источника, убедитесь, что у пользователя есть необходимые права доступа.

  1. В BladePipe нажмите "DataSource" > "Add DataSource".

  2. Выберите MySQL и заполните настройки, указав хост и порт MySQL, имя пользователя и пароль, затем нажмите "Test Connection".

    Добавление MySQL в качестве источника
  3. Нажмите "Add DataSource" внизу — экземпляр MySQL будет добавлен.

Создание конвейера

  1. В BladePipe нажмите "DataJob" > "Create DataJob".

  2. Выберите добавленные инстансы MySQL и ClickHouse и нажмите "Test Connection", чтобы убедиться, что BladePipe может к ним подключиться. Затем выберите базы данных, которые нужно перенести.

    Выбор источника и получателя
  3. Для типа DataJob выберите "Incremental" вместе с опцией "Full Data".

    Выбор типа синхронизации
  4. Выберите таблицы для репликации.

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

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

    DataJob выполняется

Проверка данных

  1. Остановите запись данных в экземпляр MySQL и дождитесь завершения слияния данных в ClickHouse.
    Примечание

    Поскольку время автоматического слияния в ClickHouse непредсказуемо, вы можете запустить слияние вручную, выполнив команду OPTIMIZE TABLE xxx FINAL;. Обратите внимание, что ручное слияние может завершиться неудачно.

В качестве альтернативы можно выполнить команду CREATE VIEW xxx_v AS SELECT * FROM xxx FINAL;, чтобы создать представление и выполнять запросы к нему для гарантии полного слияния данных. :::

  1. Создайте задание проверки данных (Verification DataJob). После завершения задания проверьте результаты, чтобы убедиться, что данные в ClickHouse идентичны данным в MySQL.
    Проверка данных