Батч или стриминг: как выбрать
Вопрос
Как вы решаете, делать пайплайн батчевым или потоковым?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Требования к свежести: как быстро падает ценность данных
Сложность стриминга: состояние, порядок, опоздания, гарантии
Стоимость и эксплуатация 24/7
Промежуточный вариант: микробатчи
Возможность пересчёта истории
Примеры задач для каждого подхода
Что могут спросить следом
- Что такое Kappa-архитектура?
- Как вы будете пересчитывать историю в стриминге?
Разбор
Образцовый ответ: «Начинаю с вопроса, какая свежесть реально нужна и как быстро падает ценность данных. Антифрод, мониторинг и персонализация в сессии требуют секунд, и там нужен стриминг. Отчётность, витрины к утру и обучение моделей прекрасно живут в батче, который проще писать, тестировать и пересчитывать, и дешевле. Стриминг добавляет сложности: состояние, опоздавшие и неупорядоченные события, гарантии доставки, эксплуатация круглые сутки. Если нужны минуты, а не секунды, часто хватает микробатчей. И я всегда думаю о пересчёте: в батче это бэкфилл, в стриминге нужно повторное чтение лога из Kafka или батч-пересчёт поверх».
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.