В 2018 году в Авито появилось in-house решение для автоматизации A/B-экспериментов. За несколько лет платформа выросла в зрелый продукт, с помощью которого производятся почти все релизы нового функционала Авито — это 4000+ экспериментов в год.
Одна из «фишек» нашей платформы — мы даем возможность пользователям собирать очень много информации по эксперименту: тысячи продуктовых и технических метрик, сотни разрезов (категория товара, регион, и т. д.).
* Каждый день в Авито активны сотни экспериментов
* Объем сырых данных (кликстрим и тд) исчисляется миллиардами строк
* В одном эксперименте — до 30 тыс. метрико-разрезов
* На выходе имеем около полу-миллиарда рассчитанных стат. тестов (дисперсии, p-value и тд)
При этом весь compute мы успеваем провести за несколько часов на относительно небольшом (в масштабах Авито) кластере Trino. Расскажу об основных способах оптимизации, которые позволяют эффективно утилизировать вычислительные ресурсы.