С помощью этого руководства вы научитесь загружать данные в Managed ClickHouse через JDBC-клиент DBeaver или с использованием clickhouse-client и визуализировать их в Managed BI.
Вы будете использовать следующие сервисы:
«Виртуальные машины» — сервис, в рамках которого предоставляется виртуальная машина.
«Публичные IP» — сервис для организации доступа к базе данных через интернет.
Managed ClickHouse — сервис для развертывания и управления кластерами ClickHouse®.
«Подсети» — сервис, позволяющий создавать подсети для размещения в них облачных ресурсов.
VPC — изолированная виртуальная сеть для создания безопасной инфраструктуры.
DNS — сервис по управлению приватными и публичными зонами и их ресурсными записями.
«Группы безопасности» — сервис для контроля трафика виртуальных машин.
Managed BI — сервис для визуализации и анализа данных.
Nginx — веб-сервер для проксирования запросов и организации защищенного HTTPS-доступа к приложению.
DBeaver — универсальный клиент баз данных для управления и администрирования SQL и NoSQL СУБД.
Шаги:
Если вы уже зарегистрированы, войдите под своей учетной записью.
Создайте виртуальную сеть с названием VPC-tutorial.
Создайте подсеть со следующими параметрами:
Название — subnet-tutorial.
Зона доступности — ru.AZ-1.
VPC — VPC-tutorial.
Адрес — 10.10.1.0/24.
DNS-серверы — 8.8.8.8.
Создайте DNS-сервер со следующими параметрами:
Название — evodns-tutorial.
VPC — VPC-tutorial.
Зона доступности — ru.AZ-1.
Подсеть — subnet-tutorial.
Адрес DNS-сервера — нажмите Ввести вручную и выберите 10.10.1.6.
Создайте новую группу безопасности со следующими параметрами:
Зона доступности — ru.AZ-1.
Название — sg-tutorial.
Добавьте правила входящего и исходящего трафика:
Трафик
Протокол
Порт
Тип источника/адресата
Источник/Адресат
Входящий
TCP
9000
IP-адрес
0.0.0.0/0
Входящий
TCP
8123
IP-адрес
0.0.0.0/0
Входящий
TCP
22
IP-адрес
0.0.0.0/0
Исходящий
Любой
—
IP-адрес
0.0.0.0/0
Создайте виртуальную машину со следующими параметрами:
Название — vm-tutorial.
Зона доступности — ru.AZ-1.
Образ — на вкладке Публичные выберите образ Ubuntu 24.04.
Сетевой интерфейс — выберите тип Подсеть с публичным IP.
VPC — VPC-tutorial.
Подсеть — subnet-tutorial.
Публичный IP — оставьте Арендовать новый или выберите IP-адрес из списка арендованных.
Группы безопасности — sg-tutorial и группа безопасности по умолчанию.
Логин — оставьте имя пользователя по умолчанию или укажите новое.
Метод аутентификации — Публичный ключ и Пароль.
Публичный ключ — укажите ключ, созданный ранее.
Пароль — задайте пароль пользователя.
Остальные параметры оставьте по умолчанию или выберите на свое усмотрение.
Создайте кластер Data Platform со следующими параметрами:
Название кластера — cluster-tutorial.
VPC — VPC-tutorial.
Зона доступности — ru.AZ-1.
Подсеть — subnet-tutorial.
Создайте инстанс Managed BI со следующими параметрами:
Название — bi-instance-tutorial.
Кластер — cluster-tutorial.
Зона доступности — ru.AZ-1.
Подсеть — subnet-tutorial.
В блоке Настройки доступа активируйте опцию Подключить публичный хост.
Создайте кластер Managed ClickHouse со следующими параметрами:
Название кластера — clickhouse_tutorial.
Тип — Single-node.
Зона доступности — ru.AZ-1.
Подсеть — subnet-tutorial.
Убедитесь, что ресурсы созданы и отображаются в личном кабинете:
На странице сервиса VPC отображается сеть VPC-tutorial со статусом «Создана».
На странице сервиса «Подсети» отображается подсеть subnet-tutorial со статусом «Создана».
На странице сервиса «Группы безопасности» отображается группа безопасности sg-tutorial со статусом «Создана».
На странице сервиса DNS на вкладке DNS-серверы отображается DNS-сервер evodns-tutorial со статусом «Активен».
На странице сервиса «Виртуальные машины» отображается виртуальная машина vm-tutorial со статусом «Запущена».
На странице сервиса Managed ClickHouse отображается кластер clickhouse_tutorial со статусом «Доступен».
На странице сервиса Managed BI отображается кластер bi-instance-tutorial со статусом «Готов».
На этом шаге вы настроите систему и nginx-сервер для подключения к базе данных.
Обновите систему:
sudo apt update && sudo apt upgrade -y
Установите nginx и clickhouse-client:
sudo apt install -y nginx-full clickhouse-client
Откройте файл конфигурации для подключения stream-блока:
sudo nano /etc/nginx/nginx.conf
Добавьте блок перед блоком http:
stream {# Native ClickHouse (TCP)upstream ch_native {server <db_private_ip>:9000;}server {listen 9000; proxy_pass ch_native;}# HTTP ClickHouse (для DBeaver / JDBC / BI))upstream ch_http {server <db_private_ip>:8123;}server {listen 8123; proxy_pass ch_http;}}
Где <db_private_ip> — внутренний IP-адрес со страницы информации о кластере из блока Данные для подключения.
Примените конфигурацию:
sudo nginx -tsudo systemctl restart nginx
Создайте пользователя с именем tutorial_user и ролью cloud_admin, сохраните пароль пользователя.
Создайте базу данных с названием tutorial_db.
Подключитесь к базе данных:
Откройте DBeaver и в панели сверху нажмите Новое соединение.
В списке соединений выберите ClickHouse.
Нажмите Далее и заполните поля на вкладке Главное:
Хост — внутренний IP кластера Managed ClickHouse clickhouse-tutorial.
Порт — 8123.
БД/Схема — tutorial_db.
Пользователь — tutorial_user.
Пароль — пароль, заданный при создании пользователя tutorial_user.
Нажмите Тест соединения.
Нажмите Ок.
Создайте таблицу с помощью скрипта:
CREATE TABLE tutorial_db.user_events (event_id UUID,user_id UInt32,event_type LowCardinality(String),event_time DateTime)ENGINE = MergeTreeORDER BY event_time;
Скрипт можно выполнить в DBeaver или в clickhouse-client, предварительно подключившись к нужной базе данных.
Заполните таблицу сгенерированными данными:
INSERT INTO tutorial_db.user_eventsSELECTgenerateUUIDv4() AS event_id,rand() % 10000 AS user_id,arrayElement(['click','view','purchase'], toUInt32(rand()) % 3 + 1) AS event_type,now() - INTERVAL rand() % 3600**24 SECOND AS event_timeFROM numbers(1000000);
Проверьте, что данные в таблице появились:
select * from tutorial_db.user_events;
Откройте Superset:
На странице Managed BI нажмите на карточку инстанса.
Нажмите Перейти в интерфейс BI.
Нажмите Sign in with cloud.
Создайте подключение в Superset:
В правом верхнем углу нажмите Настройки и выберите Данные → Подключения.
Справа сверху нажмите База данных.
В поле Поддерживаемые базы данных выберите из списка ClickHouse Connect.
Введите обязательные данные для ClickHouse Connect:
Хост — внутренний IP кластера Managed ClickHouse clickhouse-tutorial.
Порт — 8123.
Имя базы данных — tutorial_db.
Имя пользователя — tutorial_user.
Пароль — пароль, заданный при создании пользователя tutorial_user.
Нажмите Подключить.
Нажмите Завершить.
На этом шаге вы подключите датасет и создадите график, используя инструменты сервиса Managed BI.
Перейдите в раздел Датасеты.
Cправа сверху нажмите Датасет.
Введите данные:
База данных — выберите подключенную базу данных;
Схема — выберите tutorial_db;
Таблица — выберите таблицу из списка, например, user_events.
Нажмите Создать датасет и диаграмму.
Выберите тип диаграммы — Таблица.
Нажмите Создать диаграмму.
Перетащите в поле Измерения идентификаторы нужных столбцов, например event_time, event_id, user_id, event_type.
Проверьте получившуюся таблицу в поле предпросмотра Образец данных и нажмите Сохранить.
Укажите имя диаграммы и нажмите Сохранить.
Перейдите в раздел SQL → SQL Lab.
Введите данные:
База данных — выберите подключенную базу данных;
Схема — выберите tutorial_db;
Таблица — выберите таблицу user_events.
Получите данные из таблицы, например, с помощью запроса:
SELECT * from user_events where event_type = 'purchase'
Нажмите Выполнить.
Нажмите Сохранить, укажите имя запроса и сохраните его.
Нажмите Создать диаграмму.
Выберите тип графика, например, Столбчатая диаграмма.
Перетащите идентификатор столбца event_type в поле Ось Х.
Нажмите на название идентификатора в поле Ось Х и выберите вкладку Через SQL.
Укажите в поле "event_type" и нажмите Сохранить.
Перетащите идентификатор столбца event_type в поле Меры и нажмите на него для редактирования параметров.
На вкладке Столбец в поле Агрегатная функция выберите COUNT.
На вкладке Через SQL проверьте правильность запроса: COUNT("event_type").
(Опционально) Внесите исправления и нажмите Сохранить.
В поле Сортировать ось X выберите COUNT("event_type").
Нажмите Обновить диаграмму.
Чтобы сохранить график, нажмите Сохранить и задайте имя графика.
В Superset перейдите на вкладку Дашборды.
Справа сверху нажмите Дашборд.
Из списка справа перетащите ранее созданные графики в рабочую область слева.
Нажмите Сохранить.
Вы научились подключаться к базам данных Managed ClickHouse для загрузки данных с помощью JDBC-клиента DBeaver или с использованием clickhouse-client, подключать Managed ClickHouse к Managed BI и пользоваться основными инструментами для визуализации данных.