Перейти к содержимому
8 / 10

Как масштабировать рекомендации на каталог в сотни миллионов объектов?

Основная проблема — не вычисления, а память и обновление индекса. Сто миллионов векторов по 128 float32 — это 51 ГБ, что уже не помещается на одну машину с запасом. Решения по порядку применения: сжатие (квантование произведения снижает объём в 10–30 раз), шардирование индекса по объектам с параллельным опросом и слиянием, иерархия — сначала отбор по кластерам или категориям, потом внутри выбранных. Плюс сокращение самого пространства поиска: большая часть каталога никогда не показывается, и держать её в горячем индексе не нужно — достаточно отдельного холодного контура с квотой.

Как масштабировать рекомендации на каталог в сотни миллионов объектов? | JScriptiser