Назад к подготовке

High-level pipeline для CTR dashboard

Как разложить realtime CTR dashboard на ingestion, stream aggregation, storage и API?

Ответить самому

Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.

Загрузка

Короткий ответ

Типовая схема: collectors -> durable log -> stream aggregation by campaign/window -> OLAP/time-series storage -> API/dashboard.

Полный разбор

Сырой backend принимает events и пишет их в durable log: Kafka/Pulsar или аналог. Stream job читает события, группирует по campaign_id и time window, считает impressions/clicks и пишет агрегаты в хранилище для быстрых аналитических запросов.

Dashboard не должен читать сырые события на каждый refresh. Он ходит в API, которое читает materialized aggregates по campaign_id и диапазону времени, выбирает нужную гранулярность и возвращает готовый ряд clicks, impressions и CTR.