Dimensions (дименшены)
Дименшен (разрез) - это способ группировать и фильтровать метрики, а заодно расшифровывать числовые идентификаторы в человекочитаемые значения в отчётах по AB-тестам. Один дименшен заводят один раз и переиспользуют для тысяч метрик.
- Дименшен задаёт разрез метрики: по нему метрику считают не в тотале, а с условием - например
category = «Личные вещи». - Одновременно дименшен работает как справочник: связывает числовой id значения с человекочитаемым названием, чтобы в отчёте показывать «Москва», а не
213. - Конфигурация дименшена - строка в файле
dimensions/dimensions.yamlплюс, для небулевых дименшенов, SQL-справочник значений вdimensions/sql/<имя>.sql. - Список значений наполняет ежечасный фоновый процесс, а не сам мёрдж: после правки SQL значения появляются на ближай шем часовом прогоне.
- Аналитик всегда оперирует расшифрованными значениями, а не идентификаторами, - даже если в данных дименшен хранится числовым id.
Что такое дименшен
У дименшена две роли, и обе нужны одновременно.
Разрез метрики. Разрез (он же слайс, breakdown) - это условие, которое накладывают на метрику. Одну и ту же метрику buyers можно посчитать в тотале или с условием по дименшену. В наборе разрезов условие задают списком значений по дименшенам, объединённых логическим И: vertical IN (...) AND category IN (...). Наборы разрезов и пресеты описаны на странице Списки метрик.
Справочник значений. Дименшен хранит список допустимых значений и маппинг между идентификатором и названием. Например, region_id = 213 расшифровывается в region = «Москва». Этот список используют и для валидации разрезов в конфигах экспериментов, и для подстановки понятных названий в отчёты.