Streaming Data Platform строится на подходе Event Streaming: каждое изменение состояния системы фиксируется как отдельное неизменяемое событие.

Компонент-источник публикует данные в Kafka в формате AVRO, схема данных регистрируется в Ingest Platform как контракт. Данные по каждому объекту попадают в отдельный топик Kafka — это позволяет гибко управлять нагрузкой и не давать потокам мешать друг другу.

Чтение из Kafka реализовано в централизованном компоненте: клиенту не нужно писать никакого кода для заливки данных в платформу — достаточно описать контракт и начать публиковать события.

SDP работает в двух режимах: ✔️ LOGS — события пишутся в S3 последовательно, в семантике at-least-once. Все как было, ничего не теряется. ✔️ REPLICA — формируется актуальный «слепок» источника: из потока событий отбираются последние записи по ключу из контракта. Хорошо подходит для компонентов, которые самостоятельно транслируют события, или когда для аналитики достаточно отдельных событий с нужным набором полей.

Streaming Data Platform строится на подходе Event Streaming: каждое изменение состояния системы фиксируется как отдельное неизменяемое событие | Сетка — социальная сеть от hh.ru