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

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

ClickHouse Supported

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

Цель

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

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

Добавьте данные

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

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

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

Параметр(ы)Описание
HOST and PORTTypically, the port is 8443 when using TLS or 8123 when not using TLS.
DATABASE NAMEOut of the box, there is a database named default, use the name of the database that you want to connect to.
USERNAME and PASSWORDOut of the box, the username is default. Use the username appropriate for your use case.

The details for your ClickHouse Cloud service are available in the ClickHouse Cloud console. Select a service and click Connect:

ClickHouse Cloud service connect button

Choose HTTPS. Connection details are displayed in an example curl command.

ClickHouse Cloud HTTPS connection details

If you're using self-managed ClickHouse, the connection details are set by your ClickHouse administrator.

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

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

    pip install clickhouse-connect
    
    Настройка Docker Compose

    Для установок на базе Docker см. руководство по настройке баз данных Superset с инструкциями по добавлению 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. Для круговых диаграмм в Superset требуется задать Dimension и Metric, остальные параметры являются необязательными. Вы можете выбрать свои собственные поля для Dimension и Metric; в этом примере используется поле ClickHouse district в качестве Dimension и AVG(price) в качестве Metric.
Конфигурация Dimension с выбранным полем district для круговой диаграммы
Конфигурац�ия Metric с агрегатной функцией AVG(price) для круговой диаграммы

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

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

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