Как добавить метрику¶
Пошаговый процесс добавления новой метрики в систему.
Шаги¶
-
Запись в реестр. Добавить метрику в methodology/METRIC-REGISTRY.md: ID (M-NNN), описание, SQL-формула, источник, тип визуализации, дашборд.
-
SQL-файл. Создать
sql/<категория>/<имя>.sql. Обязательно: - Использовать канонический B2C-фильтр (см. canonical-filter) - либо через Metabase Model
canonical_b2c_users, либо inline-CTEb2c. - Сверить имена таблиц/колонок с DB-SCHEMA-GROUNDTRUTH (реальная схема).
-
Параметры периода через
{{period_start}}/{{period_end}}. -
Карточка в Metabase. Создать вопрос/карточку на источнике «TRADEX Replica (B2C)» (или на materialized view, если тяжёлая когортная метрика). Привязать к нужному дашборду.
-
Inventory. Отметить в
metabase/INVENTORY.md(старая карточка → новая, если заменяет существующую). -
Sanity-тест. Добавить минимум одну проверку в
sql/sanity_tests/NN_<имя>.sql- что метрика возвращает осмысленный результат (диапазон, монотонность, отсутствие null/дублей).
Правила¶
- Единицы. Денежные суммы - в USD-эквиваленте (конверсия через
h_latest_exchange_rate, котируемая валюта → USD поname/id, неcode). - Тяжёлые когорты - только через staging + materialized view (реплика отменяет долгие запросы). См. materialized-views.
- Часовой пояс -
Europe/Minskпри группировке по дням/месяцам.
Проверка перед релизом¶
Если падает - не релизим. Расхождение >30% от baseline = вероятный bug фильтра/схемы.