Потоковая обработка данных (stream processing) – подход, при котором данные обрабатываются сразу при поступлении: события от датчиков, транзакции, клики, логи. Результат – агрегаты, оповещения или обогащённые события – доступен с задержкой в секунды и доли секунды, в отличие от пакетной обработки раз в час или сутки.
Ключевые понятия
- Поток событий и брокер сообщений (например, Apache Kafka).
- Окна: фиксированные, скользящие, сессионные.
- Время события и время обработки, работа с опоздавшими событиями.
- Состояние оператора и гарантии доставки (как минимум один раз, ровно один раз).
Инструменты
Apache Flink, Spark Structured Streaming, Kafka Streams и другие движки; облачные и российские платформы потоковой обработки.
Где применяется
- Антифрод и мониторинг транзакций.
- Мониторинг оборудования и IoT.
- Персонализация и рекомендации в реальном времени.
- Обновление витрин и дашбордов.