теория
Разберём отказ от SELECT по инструментам второго акта — они не устарели ни на день.
Сила интеграции. Чтение чужих таблиц — : потребитель знает внутреннюю модель поставщика. View слабее — но контракт, живущий в чужом деплое, это всё ещё совместный релизный цикл. События из журнала — : опубликованная схема, реестр, проверка совместимости на CI. По лестнице из седьмого модуля мы спускаемся с «модельной» на «контрактную» — ровно один пролёт, и он решающий.
Волатильность. Ядро — самое волатильное место системы: цены и заказы Гена перекраивает чаще всего (это видно даже по истории коммитов). — одиннадцатый модуль: сильная связь с волатильным компонентом делает волатильным и тебя. Индекс, привязанный к схеме ядра, «дрожит» вместе с ней; индекс на событиях дрожит, только когда меняется предметный смысл — а это и должно его менять.
Дистанция. Research и команда ядра — разные люди, разные ритмы, разные языки (у одних Python и статьи, у других — Java и инциденты). Большая дистанция требует слабой связи — иначе каждое изменение превращается в согласование через два календаря.
И бонус, который даёт именно журнал: переигрываемость. Методология индекса будет меняться — вес региона, правило замещения исчезнувших товаров. С журналом это «пересчитать историю заново по новой формуле» — штатная операция девятнадцатого модуля. С SELECT это было бы «а какими цены были в апреле?» — вопрос, на который база с перезаписью не отвечает. Мы уже знаем, чем кончаются такие вопросы.
Осталась последняя граница — не техническая. Индекс строится из цен продавцов «Ярмарки»: тысячи фермеров и лавок, которые не подписывались быть сырьём финансового продукта. Что из их данных может покидать платформу — вопрос следующего решения, и он важнее формулы Фишера.