Vector database that can index 1B vectors in 48M
Зачем и как мы сделали Vectroid
Почти все векторные БД заставляют выбирать: скорость, точность или цена. Мы решили, что жертвы не нужны, и собрали serverless-решение, где всё хорошо одновременно.
Ключевая идея:
- нагрузка скачет ⇒ ресурсы выделяем динамически;
- алгоритм HNSW жрёт память, но его можно «сплющить» квантованием и развернуть обратно при необходимости.
Что умеет Vectroid
- Поиск по HNSW: 90 % recall при 10 QPS и P99 = 34 мс (MS Marco, 138 M векторов).
- Индексация 1 M векторов в минуту, 1 B — за 48 мин.
- Записи становятся видны почти сразу после вставки.
- Масштаб до миллиардов векторов в одном пространстве.
- Пишущая и читающая части масштабируются отдельно, данные живут в GCS/S3, индексы подгружаются лениво и выгружаются при простое.
Архитектура
Два независимых микросервиса: ingest и query. Все слои (вставка, индекс, поиск) масштабируются отдельно, память экономится квантованием и покадровой выгрузкой.
Попробовать бесплатно — 100 ГБ индексов навсегда.