Выбор ответа Middle Батч и стриминг обновлено
Что делать с опоздавшими событиями
Вопрос
Окно уже закрыто и результат записан, а затем пришло событие для этого окна. Какой подход разумнее всего для отчётности?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Не терять: обновить результат окна через upsert или пересчитать отдельным потоком, мерить долю опозданий. Политика для опоздавших событий должна быть явной.
Варианты ответа
- Молча отбросить: окно уже закрыто, а одно событие на итоговые отчёты заметно не повлияет
- Отнести событие к текущему открытому окну, чтобы оно учлось хотя бы в следующем результате
- Остановить пайплайн до ручного разбора, чтобы в отчётность гарантированно не ушли неточные или неполные цифры
- Не терять: обновить результат окна через upsert или пересчитать отдельным потоком, мерить долю опозданийправильный ответ
Разбор
Политика для опоздавших событий должна быть явной. Для отчётности точность важна, поэтому их учитывают через обновление результата или батч-пересчёт, а долю опозданий мониторят. Молчаливое отбрасывание искажает метрики незаметно. Отнесение к текущему окну портит оба окна. Остановка пайплайна из-за одного события недопустима.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.