Вы логируете событие experiment_exposure для A/B тестов. Какой invariants наиболее полезен для контроля data quality?
AДля пары
user_id + experiment_id не должно быть разных значений variant, а в событии должны быть заполнены experiment_id и variant из списка допустимых.BРаспределение вариантов должно быть ровно 50/50 каждый день, иначе данные неверные.
C
experiment_exposure можно не логировать, достаточно смотреть метрики результата.DСобытие нужно отправлять как можно чаще при каждом открытии экрана, даже если вариант не меняется.
Правильный ответ. Инварианты для
experiment_exposure должны ловить противоречия в назначении варианта и обязательные поля, а не требовать идеальной пропорции.Разбор
Равномерность распределения может колебаться из-за сегментации и рандомизации, поэтому это плохой жёсткий инвариант. Гораздо важнее, чтобы один пользователь не попадал в разные варианты одного эксперимента, иначе нарушается корректность интерпретации. Обязательные свойства и допустимые значения позволяют быстро ловить баги в logging. Частые повторные экспозиции могут раздуть события и усложнить дедупликацию, поэтому их нужно контролировать.
Проверь себя · 1/3разбор после ответа
Вы описываете
event taxonomy для purchase_succeeded. Как лучше хранить сумму покупки в properties, чтобы избежать проблем data quality при агрегациях?Ещё вопросы по теме «Инструментация и качество данных»
- Вы проектируете `event taxonomy` для регистрации. Какой вариант `instrumentation` лучше всего подходит, чтобы считать конверсию в успешную регистрацию и понимать, через какой способ вошли?
- Вы хотите логировать применение фильтров в каталоге. Какой вариант лучше для `event taxonomy` и последующей аналитики?
- Вы настраиваете мониторинг `data quality` для платёжного флоу. Какой набор `invariants` наиболее практичен и устойчив к сезонности?
- После обновления SDK вы видите, что сумма по `purchase_succeeded` выросла почти в 2 раза, но платежный провайдер этого не подтверждает. Что наиболее вероятно и какое действие по `data quality` самое уместное?
- В мобильном приложении события могут копиться офлайн и отправляться позже. Какие поля времени лучше заложить в `logging`, чтобы корректно строить `user journey` и контролировать задержки?
- Все вопросы по «Инструментация и качество данных» →