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

Подключение Superset к ClickHouse

ClickHouse Supported

Apache Superset — это платформа с открытым исходным кодом для исследования и визуализации данных, написанная на Python. Superset подключается к ClickHouse с помощью драйвера Python, предоставленного ClickHouse. Давайте посмотрим, как это работает...

Цель

В этом руководстве вы создадите дашборд в Superset на основе данных из базы данных ClickHouse. Дашборд будет выглядеть следующим образом:

Дашборд Superset с ценами на недвижимость в Великобритании с несколькими визуализациями, включая круговые диаграммы и таблицы

Добавьте немного данных

Если у вас нет набора данных для работы, вы можете добавить один из примеров. В этом руководстве используется набор данных UK Price Paid, поэтому вы можете выбрать именно его. В той же категории документации есть и несколько других наборов данных.

1. Соберите параметры подключения

Чтобы подключиться к ClickHouse по HTTP(S), вам потребуется следующая информация:

Параметр(ы)Описание
HOST и PORTОбычно используется порт 8443 при использовании TLS или 8123 при отсутствии TLS.
DATABASE NAMEПо умолчанию существует база данных default; используйте имя базы данных, к которой вы хотите подключиться.
USERNAME и PASSWORDПо умолчанию имя пользователя — default. Используйте имя пользователя, соответствующее вашему сценарию.

Сведения о вашем сервисе ClickHouse Cloud доступны в консоли ClickHouse Cloud. Выберите сервис и нажмите Connect:

Кнопка подключения сервиса ClickHouse Cloud

Выберите HTTPS. Параметры подключения отображаются в примере команды curl.

Параметры HTTPS-подключения ClickHouse Cloud

Если вы используете самостоятельное (self-managed) развертывание ClickHouse, параметры подключения задаются администратором ClickHouse.

2. Установка драйвера

  1. Superset использует драйвер clickhouse-connect для подключения к ClickHouse. Подробную информацию о clickhouse-connect можно найти по адресу https://pypi.org/project/clickhouse-connect/, а установить его можно с помощью следующей команды:

    pip install clickhouse-connect
    
  2. Запустите (или перезапустите) Superset.

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

  1. В Superset выберите Data в верхнем меню, затем Databases в раскрывающемся меню. Добавьте новую базу данных, нажав кнопку + Database:
Интерфейс Superset, показывающий меню Database с выделенной кнопкой + Database

  1. На первом шаге выберите ClickHouse Connect в качестве типа базы данных:
Мастер подключения базы данных Superset с выбранным вариантом ClickHouse Connect

  1. На втором шаге:
  • Включите или отключите SSL.
  • Введите информацию о подключении, которую вы собрали ранее.
  • Укажите DISPLAY NAME: это может быть любое удобное вам имя. Если вы будете подключаться к нескольким базам данных ClickHouse, сделайте имя более описательным.
Форма конфигурации подключения Superset с параметрами подключения к ClickHouse

  1. Нажмите кнопки CONNECT, а затем FINISH, чтобы завершить мастер настройки. После этого вы увидите свою базу данных в списке баз данных.

4. Добавьте набор данных

  1. Чтобы работать с данными ClickHouse в Superset, необходимо определить dataset (набор данных). В верхнем меню Superset выберите Data, затем Datasets в раскрывающемся меню.

  2. Нажмите кнопку добавления набора данных. Выберите вашу новую базу данных как источник данных (datasource), после чего вы увидите таблицы, определённые в этой базе:

Диалоговое окно создания набора данных в Superset, в котором отображаются доступные таблицы из базы данных ClickHouse

  1. Нажмите кнопку ADD в нижней части диалогового окна, и ваша таблица появится в списке наборов данных. Теперь вы готовы создавать дашборды и анализировать данные в ClickHouse!

5. Создание диаграмм и дашборда в Superset

Если вы уже знакомы с Superset, этот раздел покажется вам вполне привычным. Если вы новичок в Superset, то... он похож на многие другие современные инструменты визуализации данных: чтобы начать, много времени не нужно, а детали и нюансы приходят с опытом по мере работы с инструментом.

  1. Начните с дашборда. В верхнем меню Superset выберите Dashboards. Нажмите кнопку в правом верхнем углу, чтобы добавить новый дашборд. Следующий дашборд называется UK property prices:
Пустой дашборд Superset с названием UK property prices, готовый для добавления диаграмм

  1. Чтобы создать новую диаграмму, выберите Charts в верхнем меню и нажмите кнопку для добавления новой диаграммы. Вам будет показано множество вариантов. В следующем примере показана диаграмма типа Pie Chart, использующая датасет uk_price_paid из выпадающего списка CHOOSE A DATASET:
Интерфейс создания диаграммы в Superset с выбранным типом визуализации Pie Chart

  1. Для круговых диаграмм (pie charts) в Superset требуются Dimension и Metric, остальные настройки являются необязательными. Вы можете выбрать свои поля для измерения (dimension) и метрики (metric); в этом примере используется поле ClickHouse district в качестве измерения и AVG(price) в качестве метрики.
Конфигурация Dimension, показывающая выбор поля district для круговой диаграммы
Конфигурация Metric, показывающая агрегирующую функцию AVG(price) для круговой диаграммы

  1. Если вы предпочитаете кольцевые диаграммы (doughnut charts) вместо круговых, вы можете задать это и другие параметры в разделе CUSTOMIZE:
Панель настройки с опцией кольцевой диаграммы и другими параметрами конфигурации круговой диаграммы

  1. Нажмите кнопку SAVE, чтобы сохранить диаграмму, затем выберите UK property prices в выпадающем списке ADD TO DASHBOARD, после чего SAVE & GO TO DASHBOARD сохранит диаграмму и добавит её в дашборд:
Диалог сохранения диаграммы с выпадающим списком выбора дашборда и кнопкой Save & Go to Dashboard

  1. На этом всё. Построение дашбордов в Superset на основе данных в ClickHouse открывает целый мир молниеносной аналитики данных!
Готовый дашборд Superset с несколькими визуализациями данных о ценах на недвижимость в Великобритании из ClickHouse