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

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

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

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

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

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

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

Если вы не видите своего языкового клиента, возможно, вам стоит проверить наш список Интеграций.
3. Добавление данных
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
. Если вы определяете таблицу без указанного первичного ключа,
тогда ключ становится кортежем, указанным в предложении 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. Нажмите Connect
в левом меню, чтобы получить эти данные. В диалоговом окне выберите Native
из выпадающего меню:

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

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