Быстрый старт
Обзор
Настройте ClickHouse быстро. Скачайте подходящий бинарный файл для вашей ОС, узнайте, как запустить сервер ClickHouse, создать таблицу, вставить в нее данные и выполнить запрос к вашей таблице с помощью клиента ClickHouse.
Предварительные требования
Вам понадобится curl или другой клиент HTTP командной строки для загрузки бинарного файла ClickHouse.
Скачивание бинарного файла
ClickHouse работает нативно на Linux, FreeBSD и macOS, а на Windows запускается через WSL. Самый простой способ скачать ClickHouse локально - запустить следующую команду curl
. Она определяет, поддерживается ли ваша операционная система, а затем загружает соответствующий бинарный файл ClickHouse.
Рекомендуем выполнять команду ниже из новой и пустой подпапки, так как некоторые файлы конфигурации будут созданы в директории, в которой находится бинарный файл, при первом запуске сервера ClickHouse.
Вы должны увидеть:
На этом этапе вы можете игнорировать предложение запустить команду install
.
Для пользователей Mac: Если вы получаете ошибки о том, что разработчика бинарного файла нельзя проверить, пожалуйста, посмотрите "Исправление ошибки проверки разработчика в MacOS".
Запуск сервера
Запустите следующую команду для старта сервера ClickHouse:
Вы должны увидеть, как терминал заполнен логами. Это ожидаемо. В ClickHouse уровень логирования по умолчанию установлен на trace
, а не на warning
.
Запуск клиента
Используйте clickhouse-client
, чтобы подключиться к вашему сервису ClickHouse. Откройте новый терминал, перейдите в директорию, где сохранен ваш бинарный файл clickhouse
, и запустите следующую команду:
Вы должны увидеть улыбающееся лицо при подключении к вашему сервису, работающему на localhost:
Создание таблицы
Используйте CREATE TABLE
для определения новой таблицы. Обычные SQL DDL команды работают в ClickHouse с одним дополнением - таблицы в ClickHouse требуют наличие ENGINE
. Используйте MergeTree
, чтобы воспользоваться преимущественным производительным потенциалом ClickHouse:
Вставка данных
Вы можете использовать знакомую команду INSERT INTO TABLE
в ClickHouse, но важно понимать, что каждая вставка в таблицу MergeTree
приводит к созданию того, что мы называем частью в ClickHouse. Эти части впоследствии объединяются в фоновом режиме ClickHouse.
В ClickHouse мы стремимся выполнять массовую вставку большого количества строк за раз (десятки тысяч или даже миллионы сразу), чтобы минимизировать количество частей, которые необходимо объединить в фоновом процессе.
В этом руководстве мы не будем об этом беспокоиться. Запустите следующую команду, чтобы вставить несколько строк данных в вашу таблицу:
Запрос к вашей новой таблице
Вы можете написать запрос SELECT
, как вы сделали бы это с любой SQL базой данных:
Обратите внимание, что ответ возвращается в красивом табличном формате:
Вставьте свои данные
Следующий шаг - загрузить свои данные в ClickHouse. У нас есть много табличных функций и интеграций для приема данных. У нас есть несколько примеров на вкладках ниже, или вы можете ознакомиться с нашей страницей Интеграции для получения длинного списка технологий, которые интегрируются с ClickHouse.
- S3
- GCS
- Web
- Local
- PostgreSQL
- MySQL
- ODBC/JDBC
- Очереди сообщений
- Хранилища данных
- Другие
Используйте s3
табличную функцию, чтобы читать файлы из S3. Это табличная функция - что означает, что результат является таблицей, которая может быть:
- использована как источник для запроса
SELECT
(что позволяет вам выполнять временные запросы и оставлять ваши данные в S3), или... - вставить результирующую таблицу в таблицу
MergeTree
(когда вы будете готовы перенести ваши данные в ClickHouse)
Временный запрос выглядит следующим образом:
Перенос данных в таблицу ClickHouse выглядит следующим образом, где nyc_taxi
- это таблица MergeTree
:
Посмотрите нашу коллекцию страниц документации по AWS S3 для получения большего количества деталей и примеров использования S3 с ClickHouse.
Используемая для чтения данных в AWS S3 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: интеграция с Amazon Managed Streaming for 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.
- Руководство пользователя по первичным ключам содержит всю необходимую информацию о первичных ключах и их определении.