В 9 утра пришел алерт: DAU на вчерашней дате на 20 процентов ниже, чем обычно. Какой порядок действий наиболее правильный для диагностики?
AСначала спросить менеджера, что изменилось в продукте, и только потом смотреть данные
BСразу чинить дашборд, не проверяя сырые данные и пайплайн
CСразу объявить это реальным бизнес-падением и разослать отчет без проверок
DСначала сделать
sanity check ingestion (row count, max(event_time)), затем reconciliation между источниками и сегментами, затем проверить недавние изменения instrumentation, logging и schemaПравильный ответ. Правильный triage начинается с
sanity check, затем идет reconciliation, и только потом — анализ изменений instrumentation и пайплайна.Разбор
Если ingestion неполный, любая интерпретация DAU будет ошибочной, поэтому сначала проверяют row count и max(event_time). Затем reconciliation с независимыми источниками и разрезами показывает, локальна ли проблема или системная. После этого проверяют деплои, изменения schema и logging, чтобы найти конкретную причину и оценить, какие метрики пострадали.
Проверь себя · 1/3разбор после ответа
В отчете одновременно упали почти все метрики:
sessions, events, revenue, и падение начинается ровно с 14:00. Какое наблюдение лучше всего подтверждает гипотезу missing data?Ещё вопросы по теме «Качество данных и инварианты»
- В ежедневном дашборде `DAU` и количество событий резко упали начиная с 02:00 и остаются низкими до конца дня. Что проверить первым, чтобы быстро понять, это `missing data` или реальный бизнес-эффект?
- Какой `invariant` наиболее уместно добавить в ежедневный отчет по воронке e-commerce, чтобы ловить ошибки данных?
- Выручка по событиям в продуктовой витрине на 5 процентов выше, чем в платежной системе за тот же день. Что логичнее всего проверить первым в рамках `reconciliation`?
- Вчера число событий `purchase` выросло в 2 раза, но число уникальных `order_id` почти не изменилось. Какой источник проблемы наиболее вероятен?
- Метрики за понедельник резко просели, а за вторник резко выросли, при этом сумма за 2 дня почти не изменилась. Какой `sanity check` лучше всего указывает на `time shift`?
- Все вопросы по «Качество данных и инварианты» →