Files
clickstream-data-platform/docs/labs/superset-chart.md
T
ddadmin 3556566f64 docs(labs): обращение «вы» во всех учебных заданиях
- Зачем:
  - README и путеводитель обращаются к читателю на «вы», а ТЗ в docs/labs/
    были на «ты»; после пересборки индекса смесь стала заметна.
- Что:
  - во всех восьми файлах docs/labs/ местоимения, глаголы и повелительное
    наклонение переведены во второе лицо множественного числа.
  - названия ступеней в таблице README оставлены как в спеке.
- Проверка:
  - grep по формам «ты/твой», 'ё' и 'менти' по docs/labs/ молчит;
    git diff --check чистый; ревью диффа свежей сессией.
2026-09-03 17:28:51 -04:00

5.1 KiB
Raw Blame History

Свой график в Superset

Чему учит: увидеть, как собственный результат из хранилища становится отчетом в BI.

Сначала прочитать

Роль графика

В задании 3 вы собрали витрину dm.session_overview_v. Теперь покажите, с каких устройств чаще уходят после первой страницы. Постройте столбиковый график доли отказов по device_category за весь период витрины. Измерение одно — device_category, метрика тоже одна.

Что сделать

Заведите физический датасет в подключении к ClickHouse: схема dm, объект session_overview_v. Назовите по-русски хотя бы две колонки:

  • device_category — «Категория устройства»;
  • report_date — «Дата отчета».

В редакторе датасета, на вкладке «Metrics», создайте метрику:

Поле Значение
Metric Key bounce_share — ключ метрики и ее SQL-псевдоним
Label «Доля отказов»
SQL expression SUM(bounce_sessions) / SUM(sessions)
D3 format .1%

Доля считается из сумм слагаемых: среднее готовых долей соврет. Поэтому метрике нужно это выражение. Сохраните ее в датасете, а не в графике: подписи и формат задаются в датасете, а график их использует. Так во всех будущих графиках у метрики будут одинаковые подписи. Это правило описано в справочнике Superset.

Не используйте вкладку «Custom SQL» конструктора графика. Созданная там метрика доступна только этому графику, а нужна метрика датасета.

Создайте столбиковый график с метрикой «Доля отказов». В поле «X-axis» укажите «Категория устройства», а «Dimensions» не заполняйте. Дашборд создавать не нужно: сохраненного графика достаточно.

По умолчанию в графике выбран период «No filter». Оставьте его таким или задайте явные даты. Относительный период, например «Last week», даст пустой график: модельный календарь стенда отстает от настоящего. Последнюю дату витрины посмотрите в SQL Lab:

SELECT max(report_date)
FROM dm.session_overview_v;

Стендовые объекты не меняйте. Что переживает make up, а что стирает make clean, описано в главе «Немного Superset».

Как проверить себя

График проверяется глазами, поэтому задачи для него в homework_check нет. В SQL Lab выполните запрос:

SELECT device_category,
       round(100 * sum(bounce_sessions) / sum(sessions), 1) AS bounce_pct
FROM dm.session_overview_v
GROUP BY device_category
ORDER BY device_category;

Сверьте с графиком значение для каждой категории. В разделе «Customize» включите «Show Value» или наведите указатель на столбик. Запрос возвращает проценты с одним знаком, как формат .1%, поэтому числа должны совпасть один в один.

Приемка

  • создан физический датасет dm.session_overview_v в подключении ClickHouse;
  • в датасете есть метрика «Доля отказов» с выражением SUM(bounce_sessions) / SUM(sessions) и форматом .1%;
  • для device_category и report_date заданы русские имена «Категория устройства» и «Дата отчета»;
  • сохранен столбиковый график доли отказов по категориям устройств без относительного фильтра по времени;
  • график сверен с запросом из SQL Lab;
  • стендовые объекты не изменены, дашборд не создан.