AI И НЕЙРОСЕТИ

Когда схема данных мешает рекомендациям: урок Medium

Medium разобрал, как модель данных превратилась в узкое место feature store и начала тормозить рекомендательную систему.

✍️ Редакция iTech News | 10.06.2026 | ⏱ 4 мин | Источник: The New Stack
🧬

У Medium цель звучит просто: удержать читателя в тексте как можно дольше. На практике именно хранилище признаков, то есть слой, где живут данные для рекомендаций, оказалось узким местом: проблема была не в самой модели машинного обучения, а в том, как устроены данные вокруг нее. Для русскоязычных команд это знакомый сюжет: ML-пайплайн чаще ломается не на презентации с красивыми графиками, а на схеме таблиц, ключах доступа и задержках на чтение.

О том, как Medium уперся в ограничения собственной архитектуры рекомендаций, сообщает The New Stack в материале Синтии Данлоп. Ключевой вывод довольно неприятный, но полезный: если модель данных не совпадает с тем, как продукту реально нужно читать и обновлять признаки, то даже хороший ML-стек начинает работать как дорогой обходной путь. Иными словами, bottleneck возникает раньше, чем команда успевает спорить о качестве ранжирования.

Сама задача Medium не выглядит экзотикой. Рекомендательная система должна предсказывать, какой материал с наибольшей вероятностью заинтересует конкретного читателя. Для этого ей нужны признаки: история чтения, контекст сессии, сигналы о взаимодействии, свойства самого контента и производные метрики. Все это должно быть доступно достаточно быстро и достаточно консистентно, чтобы модель не принимала решения по устаревшим или неполным данным. В теории feature store решает именно эту задачу. На практике быстро выясняется, что недостаточно просто сложить признаки в одну систему хранения и объявить победу.

Главный урок кейса Medium в том, что архитектура данных в рекомендациях должна обслуживать не абстрактную красоту модели, а конкретные шаблоны доступа. Если системе нужно часто читать маленькие порции данных по множеству сущностей, быстро обновлять отдельные признаки и собирать итоговый вектор без лишних джойнов и перегонов между сервисами, то неудачная модель данных начинает съедать и задержку, и деньги, и время команды. Это тот случай, когда разработчики могут неделями улучшать фичи ранжирования, а реальный выигрыш утекает в storage layer. Для бизнеса эффект еще прозаичнее: рекомендации становятся медленнее, сложнее в сопровождении и хуже масштабируются под рост нагрузки.

Для индустрии это важный сигнал еще и потому, что вокруг feature store за последние годы накопилось слишком много маркетинга. Сам термин стал почти обязательным в разговорах про MLOps, персонализацию и production ML. Но кейс Medium напоминает: хранилище признаков не является волшебной абстракцией, которая автоматически чинит data engineering. Если команда не продумала гранулярность данных, способы обновления, ключи выборки и компромисс между online- и offline-доступом, то под капотом быстро образуется тот же старый зоопарк, только с более дорогими презентациями. Особенно это критично для продуктовых компаний, где рекомендация живет не в nightly batch, а внутри живого пользовательского сценария.

Для разработчиков и платформенных команд здесь несколько практических выводов. Во-первых, проектировать слой признаков нужно от паттернов чтения, а не от удобства начальной загрузки. Во-вторых, стоит заранее проверять, как система ведет себя при частичных обновлениях, высокой кардинальности сущностей и необходимости быстро собирать признаки из разных источников. В-третьих, полезно отделять разговор о «качестве модели» от разговора о «стоимости и скорости доставки признаков»: это разные инженерные проблемы, и путать их дорого. Наконец, у data model должен быть владелец. Если за нее отвечают все понемногу, обычно не отвечает никто, а bottleneck потом находят уже на проде, когда метрики вовлеченности начинают проседать без очевидной причины.

Для российских и русскоязычных команд, которые строят персонализацию в медиа, e-commerce, EdTech и контентных сервисах, этот кейс полезен своей приземленностью. Он не про то, как «еще одна компания внедрила AI», а про более неприятную реальность: рекомендациям часто мешает не отсутствие модели, а неудачно выбранная форма хранения и доставки данных к этой модели. И чем ближе система к real-time, тем меньше ей прощается архитектурная небрежность. В этом смысле история Medium хорошо укладывается в общий тренд последних лет: конкуренция в ML все заметнее смещается от выбора алгоритма к качеству данных, latency budget и дисциплине платформенной инженерии.

Следующий вопрос для рынка звучит уже не как «нужен ли нам feature store», а как «какой именно workload он должен выдерживать без архитектурных костылей через полгода роста». Пока команды продолжают мериться моделями, выигрывать будут те, кто раньше других признает неприятный факт: в рекомендательных системах узким местом нередко становится не интеллект модели, а банальная модель данных.

Поделиться: Telegram X LinkedIn