Самый быстрый и простой способ начать работу с ClickHouse — создать новый сервис в ClickHouse Cloud. В этом руководстве по быстрому старту вы настроите всё за три простых шага.
1
Создание сервиса ClickHouse
Чтобы создать бесплатный сервис ClickHouse в ClickHouse Cloud, достаточно зарегистрироваться, выполнив следующие шаги:- Создайте аккаунт на странице регистрации
- Вы можете зарегистрироваться с помощью электронной почты или через Google SSO, Microsoft SSO, AWS Marketplace, Google Cloud или Microsoft Azure
- Если вы регистрируетесь с помощью электронной почты и пароля, не забудьте подтвердить адрес электронной почты в течение 24 часов по ссылке из письма
- Войдите, используя только что созданные имя пользователя и пароль
После входа в систему ClickHouse Cloud запустит мастер онбординга, который поможет вам создать новый сервис ClickHouse. Выберите регион, в котором будет развернут сервис, и задайте имя новому сервису:
По умолчанию для новых организаций используется уровень Scale: будут созданы 3 реплики, каждая с 4 vCPU и 16 GiB оперативной памяти. Vertical autoscaling в уровне Scale включена по умолчанию. Позже вы сможете изменить уровень организации на странице ‘Plans’.При необходимости настройте ресурсы сервиса, указав минимальный и максимальный размер, в пределах которых будут масштабироваться реплики. Когда всё будет готово, выберите
Create service.Поздравляем! Ваш сервис ClickHouse Cloud запущен, а онбординг завершен. Продолжайте читать, чтобы узнать, как начать загружать данные и выполнять запросы.
2
Подключение к ClickHouse
Есть 2 способа подключиться к ClickHouse:- Подключиться через нашу веб-консоль SQL
- Подключиться через ваше приложение
Подключение через консоль SQL
Чтобы быстро начать работу, ClickHouse предоставляет веб-консоль SQL, в которую вы будете перенаправлены после завершения онбординга.Создайте вкладку запроса и введите простой запрос, чтобы убедиться, что подключение работает:Вот и всё — теперь вы готовы начать работу с новым сервисом ClickHouse!
Подключение приложения
Нажмите кнопку подключения в меню навигации. Откроется модальное окно с учетными данными вашего сервиса и инструкциями по подключению через нужный интерфейс или клиент для вашего языка программирования.Если вы не видите клиента для своего языка программирования, возможно, стоит проверить наш список Интеграции.
3
Добавление данных
ClickHouse становится лучше с данными! Существует несколько способов добавить данные, большинство из которых доступны на странице источников данных в навигационном меню.Вы можете загрузить данные следующими способами:
- Настройте ClickPipe для начала ингестии данных из таких источников, как S3, Postgres, Kafka и GCS
- Используйте SQL-консоль
- Используйте клиент ClickHouse
- Загрузите файл — поддерживаются форматы JSON, CSV и TSV
- Загрузка данных по URL-адресу файла
ClickPipes
ClickPipes — это управляемая интеграционная платформа, которая делает ингестию данных из самых разных источников такой же простой, как несколько нажатий кнопки. Разработанная для самых требовательных рабочих нагрузок, надёжная и масштабируемая архитектура ClickPipes обеспечивает стабильно высокую производительность и надёжность. ClickPipes можно использовать как для долгосрочных задач стриминга, так и для однократной загрузки данных.Добавление данных с помощью SQL Console
Как и большинство систем управления базами данных, 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 наиболее вероятным выбором будет
- Как и где хранятся данные
- Какие запросы поддерживаются
- Реплицируются ли данные
Существует множество движков таблиц, но для простой таблицы на одноузловом сервере ClickHouse наиболее вероятным выбором будет
MergeTree.Краткое введение в первичные ключи
Прежде чем двигаться дальше, важно разобраться в том, как работают первичные ключи в ClickHouse (их реализация может показаться неожиданной!):- в ClickHouse первичные ключи не уникальны для каждой строки таблицы
SELECT.Основной ключ можно задать с помощью параметра PRIMARY KEY. Если таблица определена без указания PRIMARY KEY,
ключом становится кортеж, указанный в секции ORDER BY. Если заданы и PRIMARY KEY, и ORDER BY, основной ключ должен быть подмножеством порядка сортировки.Первичный ключ одновременно является ключом сортировки и представляет собой кортеж (user_id, timestamp). Таким образом, данные, хранящиеся в каждом файле столбца, будут отсортированы сначала по user_id, затем по timestamp.Подробное описание основных концепций ClickHouse см. в разделе «Основные концепции».Вставка данных в таблицу
Вы можете использовать привычный операторINSERT INTO TABLE в ClickHouse, однако важно понимать, что каждая вставка в таблицу MergeTree приводит к созданию куска в хранилище.Даже для простого примера давайте вставим более одной строки за раз:
Обратите внимание, что столбец
timestamp заполняется с помощью различных функций Date и DateTime. В ClickHouse есть сотни полезных функций, которые можно найти в разделе Функции.Добавление данных с помощью клиента ClickHouse
Вы также можете подключиться к своему сервису ClickHouse Cloud с помощью инструмента командной строки clickhouse client. НажмитеConnect в левом меню, чтобы просмотреть соответствующие сведения. В открывшемся диалоговом окне выберите Native из выпадающего списка:- Установите ClickHouse.
- Выполните команду, подставив свои hostname, username и password:
- Попробуйте выполнить следующий запрос:
- Добавьте предложение
FORMAT, чтобы указать один из многочисленных поддерживаемых ClickHouse форматов вывода:
- Чтобы выйти из
клиента ClickHouse, введите команду exit:
Загрузить файл
Одна из типичных задач при начале работы с базой данных — вставка данных из уже имеющихся файлов. В открытом доступе есть демонстрационные данные, которые вы можете вставить: они представляют собой данные кликстрима и включают идентификатор пользователя, посещённый URL и временную метку события.Предположим, у нас есть следующий текст в CSV-файлеdata.csv:data.csv
- Следующая команда выполняет вставку данных в
my_first_table:
- Обратите внимание: новые строки теперь отображаются в таблице, если выполнить запрос из консоли SQL:
Что дальше?
- В руководстве вы вставите 2 миллиона строк в таблицу и напишете несколько аналитических запросов
- У нас есть список демонстрационных наборов данных с инструкциями по их загрузке
- Посмотрите наше 12-минутное видео о знакомстве с ClickHouse
- Если ваши данные поступают из внешнего источника, ознакомьтесь с нашей подборкой руководств по интеграциям для подключения к очередям сообщений, базам данных, конвейерам и не только
- Если вы используете инструмент визуализации данных или BI, ознакомьтесь с руководствами по подключению интерфейса к ClickHouse
- В руководстве по первичным ключам собрано всё, что нужно знать о первичных ключах и о том, как их определять