awesome-everything EN
↑ Обратно к восхождению

Data engineering

Event sourcing: тест с множественным выбором

Суть Синтез по всему юниту event sourcing с множественным выбором — лог как источник истины, projection и CQRS, replay, snapshot, версионирование событий и GDPR поверх неизменяемого лога.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 13 min

Шесть вопросов через весь юнит. Каждый отражает решение, которое ты принимаешь, проектируя или эксплуатируя event-sourced систему — не определение для пересказа, а компромисс, который надо взвесить, когда лог это истина, а всё остальное производно.

Цель

Убедись, что можешь связать append-only лог, projection, replay, snapshot, версионирование и GDPR — синтез, к которому вёл урок, на той глубине, где решения реально кусаются.

Викторина

Коллега утверждает: «мы и так публикуем доменные события в Kafka после каждой записи в БД, значит мы event-sourced». Почему это, скорее всего, неверно?

Викторина

Почему projection (read-модели) безопасно считать одноразовыми и что это даёт операционно?

Викторина

Пользователь жмёт «Сохранить», ты добавляешь событие, потом редиректишь на список из projection — и его изменения там нет. В чём корневая причина и правильный фикс?

Викторина

Загрузка одного агрегата сворачивает 4 миллиона событий и слишком медленна. Ты добавляешь snapshot. От какого одного режима отказа защищается сеньор?

Викторина

OrderPlaced получает обязательное поле currency. У миллионов исторических OrderPlaced его нет. Каков стандартный подход?

Викторина

Пользователь реализует право на забвение по GDPR; его PII вшита в сотни неизменяемых событий. Что реально шипит сеньор?

Итог

Сквозная линия юнита — одна инверсия и её следствия: append-only лог это источник истины, текущее состояние это свёртка, всё прочее производно. Projection это одноразовые read-модели, пересобираемые через replay, поэтому чтения eventually consistent. Snapshot ограничивают стоимость replay, но молча дрейфуют без защиты. Версионирование вечно — старые формы живут всегда, поэтому делаешь upcast, а не переписывание. А GDPR поверх неизменяемого лога решается crypto-shredding с реальной юридической оговоркой. Каждый ответ сводится к одному правилу: никогда не мутируй лог; выводи, проигрывай и преобразуй вокруг него.

Продолжить восхождение ↑Event sourcing: тест на свободное воспроизведение
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.