TGViewer
Делаю BI Делаю BI @withdata · 508 subscribers
Post #136 1.28K
Акт 3 "Зачем вообще все это?"

Акт 2 https://t.me/withdata/135
Акт 1 https://t.me/withdata/134

На фото - useless box, который выключает тумблер сразу после того как ты его включишь

Иногда такие упражнения приходится делать и для вполне себе аддитивных метрик (на самом деле в исходной задаче у меня была именно она, и где то на стадии «Акт 0» я написал group by 1,2,3,4,5,6,7 и успокоился). Но потом мне понадобилось добавить на дашборд ещё несколько метрик, включая ratio метрику, у которой в числителе была как раз неаддитивная метрика в готовом виде, которую посчитал другой человек. А потом еще на горизонте выплыли несколько финансовых метрик, которые надо было подружить с этим цирком, и у них разрезы совпадали только частично с исходной метрикой. В итоге волевым решением я решил усложнить жизнь всем кто будет разбираться в этом в будущем (коллеги подтвердят что я так частенько делаю) - но упростил добавление новых расчитанных метрик.
Оказалось что подобный метод расчёта хорошо подходит для стыковки между собой метрик разных типов.

Вообще у нас в Авито есть удобный инструмент под названием 3sigma (точнее нас интересует его компонент M42 для визуализации метрик) - куда можно положить скрипт метрики, задать конфиг и измерения, которые требуется рассчитать неаддитивно - и все, скрипты крутятся, разрезы мутятся.
Почему не воспользовался им? На то были объективные причины, но если бы я сразу корректно оценил трудоёмкость - пошёл бы договариваться с заказчиком о сокращении функционала в пользу более быстрой разработки и более простой поддержки (не факт что они бы согласились конечно)

Но на будущее я бы посоветовал себе и вам следующее: нафиг эту аналитику, айда в сварщики если есть хоть небольшой шанс, что вам такое упражнение придётся делать более одного раза - пишите сразу python генератор SQL скрипта, либо пользуйтесь готовым инструментов (если у вас есть свой аналог М42) иначе путаница повергнет вас в хаос, а хаос в витринах приведет на темную сторону силы...

Заключение (филосовское)

Решение может быть простым или сложным, быстрым или внедряемым через боль и N итераций. Но в любом случае полезно задавать себе вопрос - вы все еще решаете потребность пользователя или делаете сложность ради сложности?
  • 👍 8
  • ❤ 2
  • 🔥 1
More from @withdata
  1. Sep 3, 2026Минутка сложного визуального юмора
  2. Aug 14, 2026Нейрослоп для биайщиков --- не новые вызовы, а трансформация функции! В эпоху, когда данны…
  3. Apr 28, 2026Всем привет! Мой хороший товарищ и коллега Женя (@oblivionrrr) ищет себе в команду middle…
  4. Apr 6, 2026Новая рубрика - BI ЧГК Что изображено на этом графике? Могу сказать, что существует правил…
  5. Mar 28, 2026«Если в лесу падает дерево, и его никто не слышит - оно издаёт звук?» Когда я только пришё…
  6. Feb 20, 2026Саша к себе в команду ищет BI разработчика - делать красоту и крутоту в HR аналитике) Наст…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →