2.1 KiB
slug | title | sidebar_position |
---|---|---|
/ru/faq/integration/json-import | Как импортировать JSON в ClickHouse? | 11 |
Как импортировать JSON в ClickHouse?
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.:::note "Примечание" В HTTP-интерфейсе настройки передаются через параметры
GET
запроса, вCLI
interface — как дополнительные аргументы командной строки, начинающиеся с--
. :::