Вставка локальных файлов
Вы можете использовать clickhouse-client для потоковой передачи локальных файлов в ваш сервис ClickHouse. Это позволяет вам предварительно обрабатывать данные с помощью многих мощных и удобных функций ClickHouse. Рассмотрим пример...
- Предположим, у нас есть файл TSV с именем
comments.tsv, который содержит некоторые комментарии Hacker News, а строка заголовка содержит названия колонок. Вам нужно указать формат входных данных, когда вы вставляете данные, который в нашем случае будетTabSeparatedWithNames:
- Давайте создадим таблицу для наших данных Hacker News:
- Мы хотим привести к нижнему регистру колонку
author, что легко сделать с помощьюlowerфункции. Мы также хотим разбить строкуcommentна токены и сохранить результат в колонкеtokens, что можно сделать с помощьюextractAllфункции. Все это можно сделать в одной командеclickhouse-client— обратите внимание, как файлcomments.tsvпередается вclickhouse-clientс помощью оператора<:
примечание
Функция input полезна здесь, поскольку позволяет нам преобразовывать данные в процессе вставки в таблицу hackernews. Аргументом для input является формат входных сырых данных, и вы увидите это во многих других функциях таблицы (где вы указываете схему для входящих данных).
- Вот и все! Данные загружены в ClickHouse:
Результат:
- Еще один вариант - использовать инструмент
cat, чтобы передать файл вclickhouse-client. Например, следующая команда дает такой же результат, как и использование оператора<:
Посетите страницу документации о clickhouse-client для получения подробной информации о том, как установить clickhouse-client на вашу локальную операционную систему.