BI Consult Desktop Logo BI Consult Mobile Logo
  • Russian BI Исследование российских bi
  • Перейти на Fine BI
  • Контакты
  • +7 812 334-08-01
    +7 499 608-13-06
  • Отправить сообщение
  • Главная
  • Продукты Эксперт-BI
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Сельское хозяйство
    • Энергетика
    • FMCG
    • Девелоперы
    • Маркетплейсы
    • Пищевая промышленность
    • Фармацевтика
    • Построение Data Platform
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и FP&A
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • IBP
    • ИТ (CIO)
    • Закупки
  • Платформы
    • Системы бизнес-анализа (BI)
    • Интегрированное бизнес-планирование (IBP)
    • Хранилища данных (DWH / Lakehouse)
    • Каталоги данных (Data Catalog)
    • Системы ETL и ELT
    • AI / Исскуственный интеллект
    • Шина данных (ESB)
    • Система управления мастер-данными (MDM)
    • Семантический слой
  • Услуги
    • Переход на отечественные BI и DWH системы
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений и DWH
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Курсы
    • Учебный курс Информационная грамотность (Data Literacy)
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Greenplum
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt (Data Build Tool)
  • Компания
    • Руководство
    • Новости
    • Клиенты
    • Карьера
    • Скачать
    • Контакты

BI

  • FineBI
  • FineReport
  • FineDataLink
  • FineChatBI (FineAI)
  • Коннекторы данных из 1С в BI
  • Airflow / Nifi
  • Visiology
  • PIX BI
  • Modus BI
  • Yandex.DataLens
  • Open-source BI: Superset/Metabase
  • Luxms BI
  • AW BI + Alpha BI
  • FlyBI + Форсайт. Аналитическая Платформа
  • Loginom
  • Триафлай
  • AI / Исскуственный интеллект
  • Optimacros
  • Навигатор BI
  • Семантический слой

СУБД

  • Arenadata
  • ClickHouse
  • Greenplum
  • Postgres Professional
  • TData

Другое

  • Построение Data Platform
    • Аналитическое хранилище данных
    • Data Lake и Data Engineering
    • Подробнее про Data Lake
    • Внедрение Lakehouse
      • Apache Doris
      • StarRocks
      • Trino
    • Миграция витрин из пропиетарных DWH на новый стек
    • Учебный курс "Современная архитектура хранилища данных"
Главная » Курсы по системам бизнес-анализа и методологии » Учебный курс по Open-source BI - Apache Superset, Metabase, Redash » Визуализация данных ClickHouse с помощью Apache Superset, часть 2: дашборды

Визуализация данных ClickHouse с помощью Apache Superset, часть 2: дашборды

В нашей предыдущей статье, посвященной Apache Superset, мы поговорили о 3 методах установки Superset и его подключении к ClickHouse. В этой статье, которая является логическим продолжением 1 статьи, мы поговорим об одной из самых интересных тем, а именно о визуализации данных с помощью дашбордов, которые можно создать с помощью Superset.

Как оказалось, создавать дашборды очень просто.  Самая трудоемкая работа - это сбор надежных данных и построение легко читаемых графиков. В этой статье мы поговорим лишь о некоторых возможностях Superset в области визуализации данных, на самом деле их гораздо больше. И все же мы надеемся, что краткий обзор, представленный здесь, поможет Вам лучше разобраться в теме наглядного представления данных с помощью графики.

Приступим!

 

Конфигурация Superset и ClickHouse

Примеры из этой статьи можно легко воспроизвести, используя любую конфигурацию Superset и ClickHouse, которая Вам нравится. Просто убедитесь в том, что Ваши версии ПО актуальны, и Вы правильно установили драйвер clickhouse-sqlalchemy. Рекомендуемые версии:Superset 1.1.0 и новее, clickhouse-sqlalchemy 0.1.6 и новее. Я использовал ClickHouse 21.1 более ранние и более поздние версии также должны работать. В моем случае я также использую SaaS экземпляры обоих продуктов от Preset Cloud и Altinity.Cloud.

 

Обратите внимание на то, что функционирование Superset и ClickHouse в вышеупомянутых облачных сервисах идентично сборкам с открытым исходным кодом, представленных на сайтах соответствующих сообществ.

 

Обзор дашбордов Superset

Superset имеет многоуровневую архитектуру, которая разделяет визуализацию на многократно используемые компоненты. Ее ключевой особенностью хявляется «семантический слой», который обеспечивает уровень абстракции между дашбордами, содержащими графики, и БД.

 

Как только Вы входите в Superset, на главной странице появляются вкладки и подменю, позволяющие редактировать компоненты дашборда.

 

Теперь давайте рассмотрим процесс создания графиков из физических и виртуальных наборов данных, а затем объединим  их и создадим дашборд.

 

Подключение к БД

Сначала нужно подключиться к ClickHouse. 

На главном экране нажмите вкладку «DATA» и выберите подменю «DATABASES».  Появится список доступных баз данных (если таковые имеются). Нажмите кнопку  «+ DATABASE» и добавьте параметры подключения ClickHouse.  URL должен указывать на публичную конечную точку, размещенную в Altinity.Cloud. Она должна быть доступна с любого узла, имеющего доступ в Интернет. 

DATABASE NAME: clickhouse-public
SQLALCHEMY URL: clickhouse+native://demo:demo@github.demo.trial.altinity.cloud/default?secure=true

Введите значения, указанные выше и нажмите на кнопку «TEST CONNECTION».

 

Для сохранения соединения нажмите на кнопку «CONNECT».Теперь можно приступить  к созданию наборов данных и построению графиков.

 

Построение графиков на основе одной таблицы

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

Создадим набор данных.  Снова нажмите на вкладку «DATA» и выберите подменю «DATASETS».  Появится список наборов данных.  Нажмите на кнопку « + DATASET».  Появится диалоговое окно с выпадающими списками для информации о наборе данных.  В качестве соединения выберите clickhouse-public, затем выберите схему по умолчанию и таблицу ontime.

.

Для сохранения набора данных нажмите «ADD». Новый набор данных появится в верхней части списка.

Как только у Вас появится набор данных, приступите к построению своего первого графика.  Щелкните на наименование набора данных на странице Dataset.  Superset переключится на экран для выбора графика.

 

Создадим график временного ряда, отражающий трафик авиакомпаний по перевозчикам и по месяцам за 2020 год.  Заполним страницу следующим образом:

 «VISUALIZATION TYPE» — Нажмите на значок таблицы и выберите «График временных рядов»

«Time» — Выберите временной диапазон

TIME COLUMN — Выберите дату полета, если она еще не выбрана.

TIME GRAIN — Выберите месяц. 

TIME RANGE — Выберите предыдущий календарный год.

METRICS — Выберите COUNT(*),который уже должен быть выбран по умолчанию.

GROUP BY — Выберите перевозчика 

После того как Вы ввели значения, нажмите на кнопку «RUN QUERY».  Вы должны увидеть примерно следующее.

 

Не бойтесь, экспериментируйте и выбирайте график, который Вам больше всего понравится. Для этого используйте вкладку «CUSTOMIZE», которая находится в верхней части панели. Мне больше всего нравятся сложенные гистограммы. Как только Вы определились с графиком, сохраните его с помощью кнопки «SAVE». Красиво назовите его, например Flights by Carrier 2020.

 

Теперь Вы можете добавить новые графики в дашборд, введя их названия в поле «ADD TO DASHBOARD». Перед сохранением дашборда я назвал его Demo Dashboard.  Таким образом, у нас появится дашборд, в который будут добавлены построенные нами графики.

Внимательные читатели заметят, что мы создали этот график, не написав и даже не увидев ни одной строчки SQL. Superset делает все правильно, но мы, как опытные разработчики баз данных, предпочли бы увидеть запрос SQL своими глазами. К счастью, получить текст запроса SQL очень просто. Просто нажмите кнопку с тремя линиями свойств рядом с .CSV в верхней правой части панели и Вы увидите пункт подменю «VIEW QUERY».  Нажмите на него и Вы увидите сгенерированный запрос.

 

Запрос достаточно простой, но вполне содержательный. Он отображает удобство отображения наборов данных Superset. Они включают в себя базовую таблицу, используя логику генерации запросов SQL для доступа к данным. Как только набор данных становится доступным, Вы можете визуализировать его, не прибегая к SQL. Это значительно расширяет круг потенциальный пользователей, которые могут без труда создавать оригинальные визуализации данных.

 

Построение графиков на базе сложных запросов

В некоторых случаях без написания запросов SQL не обойтись. Например, Вы хотите объединить информацию из нескольких таблиц в один дашборд. В этом случае идеальным вариантом становятся виртуальные наборы данных - они работают на основе запроса, а не таблицы.

Обратимся к набору данных ontime и выберем данные о количестве рейсов, количестве задержанных и отмененных рейсах. Добавим информацию о местоположении аэропортов (отправление и назначение), а именно широту и долготу места. 

SELECT FlightDate, Origin, Dest, 

  oa.Latitude as Origin_Latitude, oa.Longitude AS Origin_Longitude, 

  od.Latitude as Dest_Latitude, od.Longitude AS Dest_Longitude, 

  Flights, Cancelled, DepDelayed, ArrDelayed

FROM (

  SELECT FlightDate, Origin, Dest, count() Flights,

    sum(Cancelled) Cancelled, 

    sum(DepDel15) DepDelayed,

    sum(ArrDel15) ArrDelayed

  FROM ontime

  GROUP BY FlightDate, Origin, Dest ORDER BY FlightDate, Origin, Dest

) AS o 

INNER JOIN airports AS oa ON toString(o.Origin) = oa.IATA

INNER JOIN airports AS od ON toString(o.Dest) = od.IATA

 

Наш пример запроса иллюстрирует операцию, которую Superset, как и любой другой генератор кода, не сможет провести автоматически.  Это стандартная оптимизация для повышения производительности за счет уменьшения объема данных, которые приходится извлекать во время полного сканирования таблицы.

Первый шаг к трансформации нашего запроса в набор данных – это его проверка в редакторе запросов Superset.  Нажмите вкладку «SQL Lab» и выберите подменю «SQL Editor».  Superset покажет панель окна запроса. 

Для тестирования запроса выполните следующие шаги: 

  • В верхней левой части панели выберите в качестве базы данных clickhouse-public.
  • В качестве схемы выберите значение по умолчанию.
  • Вставьте запрос в окно запроса редактора.
  • Для тестирования запроса нажмите «RUN»

 

Результат будет следующим:

 

Если результат Вас устраивает, нажмите кнопку «EXPLORE», в результате чего появится диалоговое окно для сохранения запроса в виде виртуального набора данных. Введите наименование, которое Вас устроит, и нажмите «SAVE & EXPLORE».

 

Superset автоматически переведет Вас на панель графиков. По умолчанию панель использует табличное отображение, что не совсем интересно.  Вместо этого предлагаю создать график, показывающий вылеты из Сан-Франциско. Заполните информацию на панели следующим образом. 

  1. VISUALIZATION TYPE — Нажмите на значок таблицы и выберите «deck.gl Arc». 
  2. Time — Выберите подходящий временной диапазон:
  • TIME COLUMN — Выберите дату рейса, если она еще не выбрана. 
  • TIME RANGE — Выберите предыдущий календарный год
  1. QUERY — Выберите данные о местоположении. 
  • START LONGITUDE & LATITUDE — Выберите Origin_Longitude и Origin_Latitude.
  • END LONGITUDE & LATITUDE — Выберите Dest_Longitude и Dest_Latitude. 
  1. FILTERS — Используйте всплывающее окно, чтобы выбрать Origin = 'SFO'. 

 

NB: Для использования deck.gl Arc и других отображений карт Вам потребуется ключ MapBox API. Preset.Cloud настраивает его автоматически, но иногда придется получить его самостоятельно. Более подробная информация предоставлена в официальном руководстве по Superset , бесплатно.

Чтобы увидеть результат, нажмите на кнопку «RUN QUERY.» Вы должны увидеть что-то вроде дугообразного графика, отображающего маршруты полетов из SFO по всем направлениям, выполненным в прошлом году.

 

Как только Вы выберите график, Вы можете сохранить его в последствие использовать.  Нажмите на кнопку «SAVE» назовите график, например SFO Destinations. Вы можете добавить этот график в  свой дашборд.

Опять же, очень интересно посмотреть на запрос SQL, который наш новый график использует для выбора данных из виртуального набора данных. Как известно, единственный способ избавиться от искушения - поддаться ему! Нажмем на трехлинейную кнопку свойств в правой верхней части дашборда и выберем «View query». Superset покажет сгенерированный код SQL.  SQL-код виртуального набора данных Вы сможете найти в подзапросе.

 

Если Вы уже работали с ClickHouse, то, скорее всего, Вы знакомы с подзапросами. ClickHouse достаточно «умен» для того, чтобы перенести условия фильтрации в подзапрос.

 

Публикация графиков

Для изучения графиков необходимо их собрать в единый дашборд. Чтобы увидеть список имеющихся дашбордов,  выберите вкладку «Dashboards»,.  Вы можете создавать новые дашборды с помощью кнопки + DASHBOARD. 

 

Поскольку мы добавили новые графики в Demo Dashboard, он уже содержит созданные  нами графики.  В списке дашбордов выберите ссылку Demo Dashboard и пройдите по ней.

 

Вы можете редактировать полученный дашборд, нажав на значок карандаша в правом верхнем углу. Редактор дашборда позволяет изменять положение и размер графиков, создав новые строки и заголовки, а также добавлять дополнительные графики. Как только Вы создали дашборд своей мечты, нажмите на кнопку «DRAFT» в верхней части страницы.  Так Вы опубликуете дашборд, и другие пользователи смогут его увидеть.

 

Узнать стоимость решенияЗапросить видео презентацию

← Предыдущая статья
Визуализация данных ClickHouse с помощью Apache Superset, часть 1: установка
Следующая статья →
Архитектура и сайзинг Apache Superset
Запросить видео презентацию Запросить доступ к демо стенду online Узнать стоимость лицензий

Задать вопрос

loading...

Решения

Анализировать ФинансыУвеличивайте ПродажиОптимальный Склад и ЛогистикаМаркетинговые Метрики

Клиенты
  • СберКорус (Группа компаний Сбербанка) – это ИТ‑компания, ИТ‑интегратор, SaaS-провайдер. Является разработчиком цифровых сервисов и услуг для автоматизации широкого диапазона бизнес-процессов юридических лиц. В 2004 году компания стала первым в России оператором электронного документооборота, а в 2012 году вошла в экосистему Сбера. 

  • ЭГИС - международная фармацевтическая компания, основанная в 1907 году в Венгрии. Компания имеет представительства более чем в 60 странах мира, в том числе в России. Компания ЭГИС является одним из ведущих производителей дженерических лекарственных средств в Центральной и Восточной Европе. Её деятельность охватывает все звенья производственно-сбытовой фармацевтической цепочки.

  • АО «Новосибирскэнергосбыт» является единственным гарантирующим поставщиком электроэнергии на территории г. Новосибирска и Новосибирской области. Предприятие отвечает за электроснабжение клиентов, закупая электроэнергию на оптовом рынке, регулируя поставку электроэнергии через договорные отношения с сетевыми организациями.

  • НПФ «Будущее» — один из крупнейших негосударственных пенсионных фондов России, предоставляющий услуги по пенсионному обеспечению и накоплениям. Фонд активно внедряет цифровые технологии для повышения качества обслуживания клиентов.

  • Решения
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Энергетика
    • Фармацевтика
  • Услуги
    • Переход на отечественные BI и DWH
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Техническая поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Платформы
    • FineBI
    • FineReport
    • FineDataLink
    • Коннекторы данных из 1С в BI
    • Airflow + NiFi
    • Visiology
    • Luxms BI
    • Modus BI
    • PIX BI
    • Arenadata
    • ClickHouse
    • Greenplum
    • Postgres Professional
    • Open-source BI: Superset/Metabase
    • Loginom
    • Yandex.DataLens
    • AI / Исскуственный интеллект
    • Optimacros
    • Шины данных
  • Курсы
    • Учебный курс Информационная грамотность
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt
  • Функциональные решения
    • Создание Data Lake
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и прогнозная аналитика
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • Сквозная аналитика
  • Компания
    • О нас
    • Руководство
    • Новости
    • Клиенты
    • Скачать
    • Контакты
    • Политика конфиденциальности
RutubeVkontakteLinkedInYouTube
ООО "Би Ай Консалт",
ИНН: 7811437757,
ОГРН: 1097847154184
199178, Россия,
Санкт-Петербург,
6-ая линия В.О., Д. 63, 4 этаж
Тел: +7 (812) 334-08-01
Тел: +7 (499) 608-13-06
E-mail: info@biconsult.ru

 

 

 

 

 

×

Пользуясь сайтом, вы соглашаетесь с использованием cookies и политикой конфиденциальности.