Перейти к основному содержимому
Перейти к основному содержимому

Быстрый старт 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.

Выберите желаемый регион для развертывания службы и дайте вашей новой службе имя:

Новая служба ClickHouse

По умолчанию уровень scale создаст 3 реплики, каждая с 4 VCPU и 16 GiB RAM. Вертикальное автоскалирование будет включено по умолчанию на уровне Scale.

Пользователи могут настраивать ресурсы службы при необходимости, указывая минимальный и максимальный размер для реплик, между которыми будет происходить масштабирование. Когда вы будете готовы, выберите Create service.

Ограничения масштабирования

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

2. Подключение к ClickHouse

Существует 2 способа подключения к ClickHouse:

  • Подключение с помощью нашего веб-консоли SQL
  • Подключение с помощью вашего приложения

Подключение с помощью консоли SQL

Для быстрого старта ClickHouse предоставляет веб-консоль SQL, в которую вас перенаправят по завершении адаптации.

Консоль SQL

Создайте вкладку запроса и введите простой запрос, чтобы проверить, что ваше соединение работает:


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

Консоль SQL

Вот и все - вы готовы начать использовать вашу новую службу 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. Если вы определяете таблицу без указанного PRIMARY KEY, то ключом становится кортеж, указанный в операторе ORDER BY. Если вы укажете и PRIMARY KEY, и ORDER BY, первичный ключ должен быть подмножеством порядка сортировки.

Первичный ключ также является ключом сортировки, представляющим собой кортеж из (user_id, timestamp). Таким образом, данные, хранящиеся в каждом файле колонки, будут отсортированы по user_id, затем timestamp.

Для глубокого погружения в ключевые концепции ClickHouse см. раздел "Ключевые концепции".

Вставка данных в вашу таблицу

Вы можете использовать знакомую команду INSERT INTO TABLE в ClickHouse, но важно понимать, что каждое вставка в таблицу MergeTree создает часть в хранилище.

Рекомендации ClickHouse

Вставляйте большое количество строк за один раз - десятки тысяч или даже миллионы строк за раз. Не волнуйтесь - ClickHouse легко справляется с таким объемом - и это поможет вам сэкономить деньги, отправляя меньше запросов записи в вашу службу.


Даже для простого примера давайте вставим более одной строки за раз:

примечание

Обратите внимание, что колонка timestamp заполняется с использованием различных функций Date и DateTime. В ClickHouse есть сотни полезных функций, которые вы можете просмотреть в разделе Функции.

Давайте проверим, что все сработало:

Добавление данных с помощью клиента ClickHouse

Вы также можете подключиться к вашей службе ClickHouse Cloud, используя командный инструмент под названием клиент clickhouse. Нажмите Connect в левом меню, чтобы получить эти данные. В диалоговом окне выберите Native из выпадающего меню:

данные подключения клиента clickhouse

  1. Установите ClickHouse.

  2. Запустите команду, заменив ваше имя хоста, имя пользователя и пароль:

Если вы увидите приглашение с улыбкой, вы готовы выполнять запросы!

  1. Попробуйте выполнить следующий запрос:

Обратите внимание, что ответ возвращается в удобном формате таблицы:

  1. Добавьте предложение FORMAT, чтобы указать один из многих поддерживаемых форматов вывода ClickHouse:

В приведенном выше запросе вывод возвращается в табулированном виде:

  1. Чтобы выйти из клиента clickhouse, введите команду exit:

Загрузка файла

Распространенной задачей при начале работы с базой данных является вставка данных, которые у вас уже есть в файлах. У нас есть некоторые образцы данных онлайн, которые вы можете вставить, представляющие clickstream данные - они включают идентификатор пользователя, URL-адрес, который был посещен, и время события.

Предположим, у нас есть следующий текст в CSV файле с именем data.csv:

  1. Следующая команда вставляет данные в my_first_table:

  1. Обратите внимание, что новые строки теперь появляются в таблице при запросе из консоли SQL:

Новые строки из CSV файла

Что дальше?