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

Вставка локальных файлов

Вы можете использовать clickhouse-client, чтобы передавать локальные файлы в ваш сервис ClickHouse. Это дает вам возможность предварительно обработать данные, используя множество мощных и удобных функций ClickHouse. Рассмотрим пример...

  1. Предположим, у нас есть TSV файл с именем comments.tsv, который содержит комментарии Hacker News, а строка заголовка содержит названия колонок. Вам нужно указать формат ввода, когда вы вставляете данные, который в нашем случае будет TabSeparatedWithNames:
  1. Давайте создадим таблицу для наших данных Hacker News:
  1. Мы хотим привести к нижнему регистру колонку author, что легко сделать с помощью lower функции. Мы также хотим разбить строку comment на токены и сохранить результат в колонке tokens, что можно сделать с помощью extractAll функции. Все это делается в одной команде clickhouse-client - обратите внимание, как файл comments.tsv передается в clickhouse-client, используя оператор <:
примечание

Функция input здесь полезна, так как она позволяет нам преобразовывать данные непосредственно во время вставки в таблицу hackernews. Аргументом для input является формат входящих сырых данных, и это можно увидеть во многих других табличных функциях (где вы указываете схему для входящих данных).

  1. Вот и все! Данные загружены в ClickHouse:

Результат будет следующим:

  1. Другой вариант - использовать инструмент, такой как cat, чтобы передать файл в clickhouse-client. Например, следующая команда дает такой же результат, как и использование оператора <:

Посетите страницу документации о clickhouse-client, чтобы узнать подробности о том, как установить clickhouse-client на вашей локальной операционной системе.