Зачем: убрать механические повторы в итогах и избежать ложных расхождений при проверке графика Superset. Что: уточнены правила итоговых списков и название задания о проверках заказов. В разборе событий разделены учет повторных доставок и выбор событий ODS для сравнения. Первый график Superset и проверочный SQL используют весь период витрины. Проверка: git diff --check, локальные ссылки и переходы к измененным заголовкам прошли. Блоки кода и таблицы требований сохранены. Согласованность периода графика с SQL проверена по тексту; повторный проход через интерфейс Superset не выполнялся.
92 lines
5.3 KiB
Markdown
92 lines
5.3 KiB
Markdown
# Свой график в Superset
|
||
|
||
**Чему учит:** увидеть, как собственный результат из хранилища становится
|
||
отчетом в BI.
|
||
|
||
## Сначала прочитать
|
||
|
||
- [«Немного Superset»](../handbook/superset.md);
|
||
- [задание 3: `dm.session_overview`](1-3-session-overview.md).
|
||
|
||
## На какой вопрос ответит график
|
||
|
||
В задании 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](../architecture/superset.md#дерево-импорта).
|
||
|
||
Не используйте вкладку «Custom SQL» конструктора графика. Созданная там
|
||
метрика доступна только этому графику, а нужна метрика датасета.
|
||
|
||
Создайте столбиковый график с метрикой «Доля отказов». В поле «X-axis»
|
||
укажите «Категория устройства», а «Dimensions» не заполняйте. Дашборд
|
||
создавать не нужно: сохраненного графика достаточно.
|
||
|
||
Для этого задания оставьте период «No filter»: график и проверочный запрос
|
||
ниже считают долю отказов за весь период витрины. Относительный период,
|
||
например «Last week», может дать пустой график: модельный календарь стенда
|
||
отстает от настоящего. Последнюю дату витрины посмотрите в SQL Lab:
|
||
|
||
```sql
|
||
SELECT max(report_date)
|
||
FROM dm.session_overview_v;
|
||
```
|
||
|
||
Стендовые объекты не меняйте. Что переживает `make up`, а что стирает
|
||
`make clean`, описано в главе [«Немного Superset»](../handbook/superset.md#стендовые-объекты-и-ваши).
|
||
|
||
## Как проверить себя
|
||
|
||
Автоматической проверки этого задания нет. Сверьте числа на графике
|
||
с результатом запроса в SQL Lab:
|
||
|
||
```sql
|
||
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;
|
||
- [ ] вы сохранили график отдельно, без создания дашборда и изменения
|
||
стендовых объектов.
|