Перейти к основному содержанию
ClickHouse поддерживает широкий спектр форматов данных для ввода и вывода. Среди них есть несколько вариантов JSON, но для ингестии данных чаще всего используется JSONEachRow. Этот формат предполагает один объект JSON на строку, при этом каждый объект отделяется переводом строки.

Примеры

Использование HTTP-интерфейса:
$ echo '{"foo":"bar"}' | curl 'http://localhost:8123/?query=INSERT%20INTO%20test%20FORMAT%20JSONEachRow' --data-binary @-
С помощью интерфейса CLI:
$ echo '{"foo":"bar"}'  | clickhouse-client --query="INSERT INTO test FORMAT JSONEachRow"
Вместо ручной вставки данных можно воспользоваться инструментом интеграции.

Полезные настройки

  • input_format_skip_unknown_fields позволяет выполнять вставку JSON, даже если в нём есть дополнительные поля, отсутствующие в схеме таблицы (они будут отброшены).
  • input_format_import_nested_json позволяет выполнять вставку вложенных объектов JSON в столбцы типа Nested.
Настройки задаются как параметры GET для HTTP-интерфейса или как дополнительные аргументы командной строки с префиксом -- для интерфейса CLI.
Последнее изменение 10 июня 2026 г.