Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Moscow Python Meetup №89 Алексей Жиряков (онлайн-кинотеатр KION, TechLead Backend команды витрины). Доверяй, но проверяй: как KION обрабатывает свыше 400М продуктовых событий в сутки.

Moscow Python Meetup №89 Алексей Жиряков (онлайн-кинотеатр KION, TechLead Backend команды витрины). Доверяй, но проверяй: как KION обрабатывает свыше 400М продуктовых событий в сутки.

В KION в сутки поступает свыше 400 миллионов продуктовых событий (помимо технических). На основе этих событий продуктовые вертикали строят аналитику, следят за продуктом, принимают бизнес решения. Качество поступаемых данных критично важно. В докладе расскажу про весь pipeline событий, как мы их готовим для аналитиков и продактов.

Moscow Python Meetup

April 17, 2024
Tweet

More Decks by Moscow Python Meetup

Other Decks in Programming

Transcript

  1. О себе Алексей Жиряков Руководитель направления бекенд команды витрины в

    KION Знаю что такое контроль хвостовой рекурсии Больше 10 лет в медиа ИТ Люблю Python и комедии В качестве хобби написал распределенную поисковую систему
  2. О чем поговорим Полный путь событий Приемник Уровни Data Quality

    Проверка при релизе Мониторинг ошибок
  3. Какие бывают события и зачем они нужны? Продуктовые Персональная витрина

    А/B эксперименты Технические Скорость Память Улучшаем продукт
  4. Архитектура своего приемника Client request Get/Post Http server приемник Consumer

    1 … Consumer N Consumers Kafka Clickhouse GUI Redash/Superset/SQL Product manger 1 Product manger N User Topic parsed events Topic raw events
  5. Сравнение приемника на Python и Go Golang 1.20 confluent-kafka-go v1.8.2

    ask=0 Locust 2.15.1 Python 3.11 FastAPI 0.103.2 aiokafka = 0.8.1 ask=0
  6. Уровни Data Quality Как мы обеспечиваем Data Quality In schema

    Физический уровень Event валидация Out schema Контроль поступления данных Логический уровень Apache airflow Контроль отклонений
  7. Как мы описываем Event валидацию Как мы обеспечиваем Data Quality

    Описываем валидацию полей Составляем валидатор событий + контекстно зависимая валидация