Realtime Analytics [NEWPROLAB] [Игорь Мосягин]

Складчина: Realtime Analytics [NEWPROLAB] [Игорь Мосягин]

upload_2026-6-18_10-55-2.png

После DLC вы сможете собрать и отладить полноценный пайплайн для realtime analytics: забрать изменения из Postgres через CDC, передать их в Kafka, посчитать метрики в ClickHouse и отдать их через API — а также диагностировать типовые поломки по лагу, свежести и контрактам данных.

Кому подойдет этот курс:

middle+ Data Engineer

Какие инструменты освоите:

  • Debezium
  • Kafka
  • ClickHouse
  • PostgreSQL
  • FastAPI
  • CDC
  • Python
  • Docker
  • Monitoring
  • Schema Evolution

Что вы сможете после DLC:

  • Собрать полный процесс обработки realtime-данных
    Вы соберёте сквозной пайплайн от источника до API и сможете объяснить каждое звено: зачем оно нужно и как влияет на остальные.
  • Проектировать метрики для freshness и SLA
    Вы научитесь определять, насколько свежи данные, и строить метрики, по которым видно, выполняется ли SLA по задержке и качеству.
  • Дебажить инциденты в проде
    Дубли, пропущенные события, lag, schema drift, неверные данные — вы научитесь находить причину и восстанавливать пайплайн.

Программа:

  • Неделя 1: Realtime mindset, локальный стенд, CDC
    Architecture kickoff
    Теория
    • Что такое realtime analytics в инженерном смысле: latency, freshness, SLA, throughput, correctness
    • Типовой prod: CDC → Kafka → OLAP → API
    • Где в realtime-пайплайнах возникают ошибки: источник, транспорт, схема, агрегация, serving, monitoring
    • Как диагностировать pipeline: lag, offsets, row counts, freshness timestamps, API latency

    Практика
    Поднять локальный docker-compose стенд с Postgres, Kafka, Debezium, ClickHouse, FastAPI. Проверить связь всех компонентов и научиться смотреть логи.
    CDC basics
    Теория

    • CDC: зачем он нужен и чем отличается от batch export
    • Debezium: snapshot и streaming
    • Семантики insert/update/delete в контексте потоковых данных
    • Event envelope, keys, ordering, tombstones
    • Эволюция схемы и контракт данных между источником и приёмником
  • Неделя 2: Kafka ingestion, надежность событий
    Kafka refresher
    Теория
    • Topics, partitions, offsets, consumer groups
    • At-least-once delivery и практические последствия. Другие семантики и их сложности
    • Idempotency и дубли на уровне downstream
    • Backpressure, in-flight и lag: как возникают и как диагностируются
    • Контракты для событий: naming, versioning, required fields

    Практика
    Написать producer/consumer для тестовых событий. Смоделировать задержку consumer и увидеть lag. Добавить тестовые дубли и проверить, как downstream должен на них реагировать.

  • Неделя 3: ClickHouse, ingestion, realtime-агрегации
    OLAP
    Теория
    • Почему для realtime analytics нужен быстрый OLAP
    • Kafka Engine / ingestion pattern в ClickHouse и как его настроить и мониторить
    • Raw events vs serving tables, materialized views и incremental aggregation
    • Replacing/Summing/AggregatingMergeTree: когда они нужны и где легко ошибиться
    • Freshness как часть модели данных

    Практика
    Подключить ClickHouse к Kafka events. Создать raw events table. Построить materialized views для бизнес-метрик. Посчитать метрики по time window, entity, status/event type. Добавить freshness timestamp.

  • Неделя 4: FastAPI metric service и начало проекта
    API
    Теория
    • Зачем нужен API поверх OLAP, если есть дашборды
    • Metric endpoints: filters, grouping, time range, pagination/limits
    • Cache: где помогает, где вредит freshness
    • API-level freshness checks
    • Error semantics: когда отдавать stale response, warning или возвращать ошибку

    Практика
    Реализовать FastAPI service поверх ClickHouse. Добавить endpoints для нескольких метрик. Поддержать time range и group by. Добавить cache для тяжелого запроса. Добавить freshness check.

  • Неделя 5: Ops drill и продолжение проекта
    Дебаг
    Теория
    • Как дебажить realtime pipeline: подход, системность, сигналы
    • Runbook для инцидента: симптом, blast radius, гипотеза, проверки, fix, prevention
    • Лаги: source lag, Kafka lag, ClickHouse ingestion lag, API freshness
    • Schema drift: что ломается и как увидеть раньше пользователя
    • Wrong numbers: как сверять source, raw layer, aggregates и API

    Практика
    Получить заранее сломанный pipeline. Найти причину lag. Найти schema drift и предложить совместимое исправление. Найти причину неправильной метрики. Написать incident note и recovery plan.

  • Неделя 6: Проверка проекта, демо и защита
    Финальная подготовка
    Теория
    • Как объяснять инженерные решения: latency vs correctness, cost vs freshness, simplicity vs flexibility
    • Как презентовать pipeline на собеседовании или внутри команды
    • Финальный разбор типовых ошибок перед защитой

    Защита проектов
    Теория

    • Demo на тестовых событиях
    • Разбор одной поломки и диагностики
    • Вопросы по semantics, freshness, duplicates, schema drift

Цена: 40000 руб.