Learning Domain-Driven Design — глава 4
Участники выпуска
Полный состав этого выпуска пока не подтверждён источниками.
Что обсудили голосом
Финальная часть связывает DDD с microservices, событиями и Data Mesh. Микросервисы отражают автономные команды и независимый deployment. Хороший сервис — deep module, который прячет сложность за малым интерфейсом. Bounded context может задать его границу, но соответствие не обязано быть один к одному.
В event-driven системе command просит действие и может быть отклонён, а event фиксирует факт. Event Notification несёт идентификатор и требует дочитать данные. Event-Carried State Transfer передаёт снимок или изменения, снижая runtime-зависимость ценой риска устаревания, репликации и связанности схем.
Аналитическая модель отделяется от транзакционной. Star и Snowflake Schema строятся вокруг facts и dimensions. Data Warehouse преобразует данные при загрузке, но единая модель и ETL связывают отчёты с сервисами. Data Lake откладывает преобразование, позволяя разные views, однако schema-less накопление ухудшает качество данных.
Data Mesh переносит DDD в аналитику: модели следуют bounded contexts, а доменные команды владеют данными. Данные становятся продуктом с версионируемой схемой и ожиданиями качества. Self-service platform упрощает публикацию и поиск, а federated governance сохраняет общие правила и автономию.