Перейти к основному содержанию
Template BigQuery to ClickHouse — это батч-конвейер, предназначенный для приёма данных из таблицы BigQuery в таблицу ClickHouse. Template может читать всю таблицу или фильтровать определённые записи с помощью указанного SQL-запроса.

Требования к конвейеру

  • Исходная таблица BigQuery должна существовать.
  • Целевая таблица ClickHouse должна существовать.
  • Хост ClickHouse должен быть доступен с машин-воркеров Dataflow.

Параметры Template



Значения по умолчанию для всех параметров ClickHouseIO можно найти в коннекторе Apache Beam ClickHouseIO

Схема исходной и целевой таблиц

Чтобы эффективно загрузить набор данных BigQuery в ClickHouse, конвейер выполняет процесс сопоставления столбцов в следующие этапы:
  1. Шаблоны формируют объект схемы на основе целевой таблицы ClickHouse.
  2. Шаблоны перебирают набор данных BigQuery и пытаются сопоставить столбцы по их именам.

При этом ваш набор данных BigQuery (будь то таблица или запрос) должен иметь в точности те же имена столбцов, что и целевая таблица ClickHouse.

Сопоставление типов данных

Типы BigQuery преобразуются на основе определения таблицы ClickHouse. Поэтому в таблице выше приведено рекомендуемое сопоставление, которое должно использоваться в целевой таблице ClickHouse (для заданной таблицы/запроса BigQuery):

Запуск Template

Template BigQuery to ClickHouse можно запустить через Google Cloud CLI.
Обязательно ознакомьтесь с этим документом, особенно с приведёнными выше разделами, чтобы полностью понять требования к конфигурации Template и необходимые предварительные условия.
Войдите в Google Cloud Console и найдите DataFlow.
  1. Нажмите кнопку CREATE JOB FROM TEMPLATE
  2. Когда откроется форма Template, введите имя задачи и выберите нужный регион.
  3. В поле DataFlow Template введите ClickHouse или BigQuery, затем выберите Template BigQuery to ClickHouse
  4. После выбора форма развернётся, и вы сможете указать дополнительные сведения:
    • JDBC URL сервера ClickHouse в следующем формате: jdbc:clickhouse://host:port/schema.
    • Имя пользователя ClickHouse.
    • Имя целевой таблицы ClickHouse.

Параметр пароля ClickHouse отмечен как необязательный — для случаев, когда пароль не настроен. Чтобы добавить его, прокрутите страницу вниз до параметра Password for ClickHouse Endpoint.
  1. Настройте и добавьте все конфигурации, относящиеся к BigQuery/ClickHouseIO, как подробно описано в разделе Параметры Template

Отслеживание задачи

Перейдите на вкладку Dataflow Jobs в Google Cloud Console, чтобы отслеживать состояние задачи. Там вы увидите сведения о задаче, включая ход выполнения и возможные ошибки:

Устранение неполадок

Ошибка превышения общего лимита памяти (код 241)

Эта ошибка возникает, когда у ClickHouse заканчивается память при обработке больших батчей данных. Чтобы устранить проблему:
  • Увеличьте ресурсы инстанса: переведите ClickHouse server на более крупный инстанс с большим объёмом памяти, чтобы он справлялся с нагрузкой при обработке данных.
  • Уменьшите размер батча: настройте размер батча в конфигурации задачи Dataflow так, чтобы в ClickHouse отправлялись меньшие фрагменты данных и снижалось потребление памяти на каждый батч. Эти изменения помогут сбалансировать использование ресурсов во время ингестии данных.

Исходный код Template

Исходный код Template доступен в следующих репозиториях:
Последнее изменение 19 июня 2026 г.