Самый быстрый и простой способ начать работу с ClickHouse — создать новый сервис в ClickHouse Cloud. В этом руководстве по быстрому старту вы настроите всё за три простых шага.
Создание сервиса 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 запущен, а онбординг завершен. Продолжайте читать, чтобы узнать, как начать загружать данные и выполнять запросы.
Подключение к ClickHouse
Есть 2 способа подключиться к ClickHouse:- Подключиться через нашу веб-консоль SQL
- Подключиться через ваше приложение
Подключение через консоль SQL
Чтобы быстро начать работу, ClickHouse предоставляет веб-консоль SQL, в которую вы будете перенаправлены после завершения онбординга.Создайте вкладку запроса и введите простой запрос, чтобы убедиться, что подключение работает:Вот и всё — теперь вы готовы начать работу с новым сервисом ClickHouse!
Подключение приложения
Нажмите кнопку подключения в меню навигации. Откроется модальное окно с учетными данными вашего сервиса и инструкциями по подключению через нужный интерфейс или клиент для вашего языка программирования.Если вы не видите клиента для своего языка программирования, возможно, стоит проверить наш список Интеграции.
Добавление данных
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 миллиона строк в таблицу и напишете несколько аналитических запросов
- У нас есть список демонстрационных наборов данных с инструкциями по их загрузке
- Посмотрите наше 25-минутное видео о знакомстве с ClickHouse
- Если ваши данные поступают из внешнего источника, ознакомьтесь с нашей подборкой руководств по интеграциям для подключения к очередям сообщений, базам данных, конвейерам и не только
- Если вы используете инструмент визуализации данных или BI, ознакомьтесь с руководствами по подключению интерфейса к ClickHouse
- В руководстве по первичным ключам собрано всё, что нужно знать о первичных ключах и о том, как их определять