Быстрый старт с ClickHouse OSS
В этом учебном пособии быстрого старта мы поможем вам установить OSS 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: интеграция с 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.
- Руководство пользователя по первичным ключам - это всё, что вам нужно знать о первичных ключах и о том, как их определять.