Экспорт JSON
Почти любой формат JSON, используемый для импорта, может быть использован и для экспорта. Самым популярным является JSONEachRow
:
Или мы можем использовать JSONCompactEachRow
, чтобы сэкономить место на диске, пропуская имена столбцов:
Переопределение типов данных как строки
ClickHouse учитывает типы данных и экспортирует JSON в соответствии со стандартами. Но в случаях, когда нам нужно закодировать все значения как строки, мы можем использовать формат JSONStringsEachRow:
Теперь числовой столбец hits
закодирован как строка. Экспорт в виде строк поддерживается для всех форматов JSON*, просто исследуйте форматы JSONStrings\*
и JSONCompactStrings\*
:
Экспорт метаданных вместе с данными
Общий формат JSON, который популярен в приложениях, экспортирует не только результирующие данные, но и типы столбцов, а также статистику запросов:
Формат JSONCompact напечатает ту же метаданные, но использует упрощенную форму для самих данных:
Рассмотрите варианты JSONStrings
или JSONCompactStrings
, чтобы закодировать все значения как строки.
Компактный способ экспорта данных и структуры JSON
Более эффективный способ получения данных, а также их структуры - использовать формат JSONCompactEachRowWithNamesAndTypes
:
Этот формат будет использовать компактный JSON, предшествующий двумя строками заголовка с именами и типами столбцов. Этот формат затем может быть использован для загрузки данных в другой экземпляр ClickHouse (или в другие приложения).
Экспорт JSON в файл
Чтобы сохранить экспортированные данные JSON в файл, мы можем использовать оператор INTO OUTFILE:
ClickHouse понадобилось всего 2 секунды, чтобы экспортировать почти 37 миллионов записей в файл JSON. Мы также можем экспортировать, используя оператор COMPRESSION
, чтобы включить сжатие на лету:
На это уходит больше времени, но создается гораздо меньший сжатый файл: