Быстрый старт
Добро пожаловать в ClickHouse!
В этом руководстве по быстрому старту мы поможем вам настроить ClickHouse за 8 простых шагов. Вы скачаете подходящий бинарный файл для вашей ОС, узнаете, как запустить сервер ClickHouse и использовать клиент ClickHouse для создания таблицы, затем вставите данные в нее и выполните запрос, чтобы выбрать эти данные.
Давайте начнем?
Скачайте ClickHouse
ClickHouse работает в нативном режиме на Linux, FreeBSD и macOS и запускается на Windows через
WSL. Самый простой способ скачать ClickHouse локально — выполнить
следующую команду curl
. Она определяет, поддерживается ли ваша операционная система,
затем скачивает подходящий бинарный файл ClickHouse.
Рекомендуем выполнять приведенную ниже команду из новой и пустой подпапки, так как некоторые файлы конфигурации будут созданы в директории, где находится бинарный файл, при первом запуске сервера ClickHouse.
Вы должны увидеть:
На этом этапе вы можете проигнорировать предложение выполнить команду install
.
Для пользователей Mac: Если вы получаете ошибки, что разработчик бинарного файла не может быть подтвержден, пожалуйста, ознакомьтесь с "Исправление ошибки проверки разработчика в MacOS".
Запустите сервер
Выполните следующую команду, чтобы запустить сервер ClickHouse:
Вы должны увидеть, как терминал заполняется логами. Это ожидаемое поведение. В ClickHouse
уровень логирования по умолчанию
установлен на trace
, а не warning
.
Запустите клиент
Используйте clickhouse-client
, чтобы подключиться к вашему сервису ClickHouse. Откройте новый
терминал, перейдите в директорию, где сохранен ваш бинарный файл clickhouse
, и
выполните следующую команду:
Вы должны увидеть улыбающееся лицо, когда он подключается к вашему сервису, работающему на localhost:
Вставьте данные
Вы можете использовать знакомую команду INSERT INTO TABLE
с ClickHouse, но важно понимать, что каждая вставка в таблицу MergeTree
приводит к созданию того, что мы
называем частью в ClickHouse в хранилище. Эти части затем сливаются в фоновом режиме ClickHouse.
В ClickHouse мы стараемся выполнять массовую вставку большого количества строк одновременно (десятки тысяч или даже миллионы за раз), чтобы минимизировать количество частей, которые необходимо слить в фоновом процессе.
В этом руководстве мы пока не будем беспокоиться об этом. Выполните следующую команду, чтобы вставить несколько строк данных в вашу таблицу:
Запросите свою новую таблицу
Вы можете написать запрос SELECT
, как вы бы сделали с любой SQL базой данных:
Обратите внимание, что ответ возвращается в красивом табличном формате:
Вставьте свои данные
Следующий шаг — это получить свои данные в ClickHouse. У нас есть много табличных функций и интеграций для приема данных. У нас есть примеры в вкладках ниже, или вы можете ознакомиться с нашей страницей Интеграции для длинного списка технологий, которые интегрируются с ClickHouse.
- S3
- GCS
- Web
- Local
- PostgreSQL
- MySQL
- ODBC/JDBC
- Очереди сообщений
- Озера данных
- Другое
Используйте s3
табличную функцию, чтобы
читать файлы из S3. Это табличная функция, что значит, что результат — это таблица,
которая может быть:
- использована как источник для запроса
SELECT
(что позволяет выполнять ad-hoc запросы и оставлять ваши данные в S3), или... - вставить получившуюся таблицу в таблицу
MergeTree
(когда вы будете готовы переместить ваши данные в ClickHouse)
Ad-hoc запрос выглядит следующим образом:
Перемещение данных в таблицу ClickHouse выглядит следующим образом, где
nyc_taxi
- это таблица MergeTree
:
Ознакомьтесь с нашей коллекцией страниц документации AWS S3 для получения множества подробностей и примеров использования S3 с ClickHouse.
s3
табличная функция, используемая для
чтения данных в AWS S3, также работает с файлами в Google Cloud Storage.
Например:
Найдите больше деталей на странице s3
табличной функции.
url
табличная функция читает
файлы, доступные из интернета:
Найдите больше деталей на странице url
табличной функции.
Используйте file
табличный движок, чтобы
читать локальный файл. Для простоты просто скопируйте файл в директорию user_files
(которая находится в директории, где вы скачали бинарный файл ClickHouse).
Обратите внимание, что ClickHouse выводит имена и типы данных ваших колонок, анализируя большую партию строк. Если ClickHouse не может определить формат файла по имени файла, вы можете указать его в качестве второго аргумента:
Просмотрите страницу документации file
табличной функции
для получения дополнительных сведений.
Используйте postgresql
табличную функцию
для чтения данных из таблицы в PostgreSQL:
Просмотрите страницу документации postgresql
табличной функции
для получения дополнительных сведений.
Используйте mysql
табличную функцию
для чтения данных из таблицы в MySQL:
Просмотрите страницу документации mysql
табличной функции
для получения дополнительных сведений.
ClickHouse может читать данные из любого источника данных ODBC или JDBC:
Просмотрите страницы документации odbc
табличной функции
и jdbc
табличной функции для получения дополнительных сведений.
Очереди сообщений могут передавать данные в ClickHouse с использованием соответствующего табличного движка, включая:
- Kafka: интеграция с Kafka с использованием
Kafka
табличного движка - Amazon MSK: интеграция с Управляемой потоковой передачей для Apache Kafka (MSK)
- RabbitMQ: интеграция с RabbitMQ с использованием
RabbitMQ
табличного движка
У ClickHouse есть табличные функции для чтения данных из следующих источников:
- Hadoop: интеграция с Apache Hadoop с использованием
hdfs
табличной функции - Hudi: чтение из существующих таблиц Apache Hudi в S3 с использованием
hudi
табличной функции - Iceberg: чтение из существующих таблиц Apache Iceberg в S3 с использованием
iceberg
табличной функции - DeltaLake: чтение из существующих таблиц Delta Lake в S3 с использованием
deltaLake
табличной функции
Ознакомьтесь с нашим длинным списком интеграций ClickHouse, чтобы узнать, как подключить ваши существующие фреймворки и источники данных к ClickHouse.
Исследуйте
- Ознакомьтесь с нашей секцией Основные понятия, чтобы узнать некоторые основы работы ClickHouse.
- Ознакомьтесь с Расширенным учебником, который глубже погружается в ключевые концепции и возможности ClickHouse.
- Продолжите обучение, пройдя наши бесплатные курсы тренинга по мере необходимости на ClickHouse Academy.
- У нас есть список примеров наборов данных с инструкциями по их вставке.
- Если ваши данные поступают из внешнего источника, ознакомьтесь с нашей коллекцией руководств по интеграции для подключения к очередям сообщений, базам данных, конвейерам и другим источникам.
- Если вы используете инструмент визуализации UI/BI, ознакомьтесь с руководствами пользователя для подключения UI к ClickHouse.
- Руководство пользователя по первичным ключам содержит всю необходимую информацию о первичных ключах и том, как их определить.