Быстрый старт ClickHouse Cloud
Самый быстрый и простой способ начать работать с ClickHouse - создать новую услугу в ClickHouse Cloud.
Создание услуги ClickHouse
Чтобы создать бесплатную услугу ClickHouse в ClickHouse Cloud, вам нужно просто зарегистрироваться, выполнив следующие шаги:
- Создайте аккаунт на странице регистрации
- Вы можете выбрать регистрацию с помощью электронной почты или через SSO Google, SSO Microsoft, AWS Marketplace, Google Cloud или Microsoft Azure
- Если вы зарегистрируетесь с помощью электронной почты и пароля, не забудьте подтвердить свой адрес электронной почты в течение следующих 24 часов по ссылке, которую вы получите на свою электронную почту
- Войдите, используя имя пользователя и пароль, которые вы только что создали

После входа в систему ClickHouse Cloud запускает мастер по началу работы, который проведет вас через процесс создания новой услуги ClickHouse. Вам будет предложено выбрать план:

Мы рекомендуем уровень Scale для большинства рабочих нагрузок. Дополнительные подробности о уровнях можно найти здесь
Выбор плана требует, чтобы вы выбрали желаемый регион для развертывания вашей первой услуги. Конкретные доступные параметры будут зависеть от выбранного уровня. На следующем этапе мы предполагаем, что пользователь выбрал рекомендуемый уровень Scale.
Выберите желаемый регион для развертывания услуги и дайте вашей новой услуге имя:

По умолчанию уровень Scale создаст 3 реплики, каждая с 4 VCPUs и 16 GiB RAM. Вертикальное автомасштабирование будет включено по умолчанию в уровне Scale.
Пользователи могут настроить ресурсы услуги по мере необходимости, указав минимальный и максимальный размер для реплик, между которыми произойдет масштабирование. Когда будете готовы, выберите Create service
.

Поздравляю! Ваша услуга ClickHouse Cloud запущена, и процесс регистрации завершен. Продолжайте читать, чтобы узнать, как начать прием и запрос данных.
Подключение к ClickHouse
Существует 2 способа подключиться к ClickHouse:
- Подключиться с помощью нашего веб-консоли SQL
- Подключиться с вашим приложением
Подключение с помощью SQL консоли
Для быстрого старта ClickHouse предоставляет веб-консоль SQL, на которую вы будете перенаправлены по завершении процесса регистрации.

Создайте вкладку запроса и введите простой запрос, чтобы проверить, что ваше подключение работает:
Вы должны увидеть 4 базы данных в списке, а также любые, которые вы могли добавить.

Это все - вы готовы начать использовать вашу новую услугу ClickHouse!
Подключение с вашим приложением
Нажмите кнопку подключения в меню навигации. Откроется модальное окно с учетными данными вашей услуги и набором инструкций о том, как подключиться с помощью вашего интерфейса или языковых клиентов.

Если вы не видите своего языкового клиента, возможно, вам стоит проверить наш список Интеграций.
Добавление данных
ClickHouse лучше с данными! Существует множество способов добавить данные, и большинство из них доступны на странице Источники данных, которую можно найти в меню навигации.

Вы можете загружать данные следующими способами:
- Настройте ClickPipe для начала приема данных из источников, таких как S3, Postgres, Kafka, GCS
- Используйте SQL консоль
- Используйте клиент ClickHouse
- Загрузите файл - поддерживаемые форматы включают JSON, CSV и TSV
- Загрузите данные по URL файла
ClickPipes
ClickPipes - это управляемая интеграционная платформа, которая делает прием данных из разнообразных источников простым и удобным. Спроектированная для самых требовательных рабочих нагрузок, надежная и масштабируемая архитектура ClickPipes обеспечивает стабильную производительность и надежность. ClickPipes можно использовать как для долгосрочных потоковых нужд, так и для одноразовой загрузки данных.

Добавление данных с помощью SQL консоли
Как и в большинстве систем управления базами данных, ClickHouse логически группирует таблицы в базы данных. Используйте команду CREATE DATABASE
, чтобы создать новую базу данных в ClickHouse:
Выполните следующую команду, чтобы создать таблицу с именем my_first_table
в базе данных helloworld
:
В приведенном выше примере my_first_table
- это таблица MergeTree
с четырьмя колонками:
user_id
: 32-битное целое число без знака (UInt32)message
: тип данных String, который заменяет типы, такие какVARCHAR
,BLOB
,CLOB
и другие из других систем управления базами данныхtimestamp
: значение DateTime, которое представляет момент во времениmetric
: 32-битное число с плавающей запятой (Float32)
Движки таблиц определяют:
- Как и где хранятся данные
- Какие запросы поддерживаются
- Реплицируются ли данные
Существует множество движков таблиц на выбор, но для простой таблицы на сервере ClickHouse с одним узлом MergeTree
будет вашим предпочтительным выбором.
Краткое введение в первичные ключи
Прежде чем двигаться дальше, важно понять, как работают первичные ключи в ClickHouse (реализация первичных ключей может показаться неожиданной!):
- первичные ключи в ClickHouse не уникальны для каждой строки в таблице
Первичный ключ таблицы ClickHouse определяет, как данные сортируются при записи на диск. Каждые 8,192 строки или 10MB данных (это называется гранулярностью индекса) создают запись в файле индекса первичного ключа. Эта концепция гранулярности создает разреженный индекс, который может легко поместиться в памяти, а гранулы представляют собой полоску наименьшего объема данных колонки, которые обрабатываются во время запросов SELECT
.
Первичный ключ можно определить с помощью параметра PRIMARY KEY
. Если вы определяете таблицу без указания PRIMARY KEY
, то ключ становится кортежем, указанным в предложении ORDER BY
. Если вы задаете и PRIMARY KEY
, и ORDER BY
, первичный ключ должен быть подмножеством порядка сортировки.
Первичный ключ также является ключом сортировки, который представляет собой кортеж (user_id, timestamp)
. Поэтому данные, хранящиеся в каждом файле колонки, будут отсортированы по user_id
, затем timestamp
.
Для глубокого погружения в основные концепции ClickHouse смотрите раздел "Основные концепции".
Вставка данных в вашу таблицу
Вы можете использовать знакомую команду INSERT INTO TABLE
с ClickHouse, но важно понять, что каждая вставка в таблицу MergeTree
приводит к созданию части в хранилище.
Вставляйте большое количество строк за один раз - десятки тысяч или даже миллионы строк за раз. Не переживайте - ClickHouse легко справится с таким объемом - и это сэкономит вам деньги, отправляя меньше запросов на запись в вашу услугу.
Даже для простого примера давайте вставим более одной строки за раз:
Обратите внимание, что колонка timestamp
заполняется с использованием различных Date и DateTime функций. В ClickHouse имеется сотни полезных функций, которые вы можете просмотреть в разделе Функции.
Давайте проверим, что это сработало:
Добавление данных с использованием клиента ClickHouse
Вы также можете подключиться к вашей услуге ClickHouse Cloud, используя инструмент командной строки под названием clickhouse client. Нажмите Connect
в левом меню, чтобы получить эти данные. В диалоговом окне выберите Native
из выпадающего списка:

-
Установите ClickHouse.
-
Выполните команду, заменив ваше имя хоста, имя пользователя и пароль:
Если вы получили приглашение с улыбающимся лицом, вы готовы выполнять запросы!
- Попробуйте выполнить следующий запрос:
Обратите внимание, что ответ возвращается в удобном табличном формате:
- Добавьте оглавие
FORMAT
, чтобы указать один из многих поддерживаемых форматов вывода ClickHouse:
В приведенном выше запросе вывод возвращается в виде табуляционно-разделенного формата:
- Чтобы выйти из
clickhouse client
, введите команду exit:
Загрузка файла
Распространенной задачей при начале работы с базой данных является вставка данных, которые у вас уже есть в файлах. У нас есть некоторые примерные данные в интернете, которые вы можете вставить, представляющие данные о кликах - они включают идентификатор пользователя, URL, который был посещен, и время события.
Предположим, у нас есть следующий текст в CSV файле с именем data.csv
:
- Следующая команда вставляет данные в
my_first_table
:
- Обратите внимание, что новые строки теперь появляются в таблице, если вы выполняете запрос из SQL консоли:

Что дальше?
- Учебное пособие предлагает вам вставить 2 миллиона строк в таблицу и написать несколько аналитических запросов
- У нас есть список примерных наборов данных с инструкциями о том, как вставить их
- Посмотрите наше 25-минутное видео о Введении в ClickHouse
- Если ваши данные поступают из внешнего источника, просмотрите нашу коллекцию руководств по интеграции для подключения к очередям сообщений, базам данных, конвейерам и многому другому
- Если вы используете инструмент визуализации UI/BI, ознакомьтесь с руководствами пользователя для подключения UI к ClickHouse
- Руководство пользователя по первичным ключам содержит всю необходимую информацию о первичных ключах и как их определить.