Когда хватит pgvector, а когда нужна специализированная векторная база?
- pgvector или Qdrant?
- Как выбрать векторную базу данных?
pgvector в уже используемом PostgreSQL — лучший старт: одна база для данных, метаданных и векторов, транзакции, права доступа через обычные JOIN и фильтры, знакомая эксплуатация и бэкапы. Хорошо работает до миллионов–десятков миллионов векторов. Специализированная база (Qdrant, Milvus, Weaviate, OpenSearch) оправдана при очень больших объёмах, высокой нагрузке поиска, сложной фильтрации вместе с ANN, гибридном поиске из коробки, горизонтальном масштабировании. Решение — нагрузочный замер на своих данных и фильтрах.
- Вторая база — синхронизация данных и прав, ещё одна система в эксплуатации
- Фильтрация по правам с ANN — частое узкое место; проверять полноту с фильтром
- Память индекса HNSW растёт с числом и размерностью векторов
А ещё Начать с pgvector и перейти при доказанной необходимости — обычно разумнее, чем наоборот
Подробно
Критерии:
- объём: число векторов × размерность × 4 байта плюс граф;
- нагрузка: запросов в секунду и требования к задержке p95;
- фильтры: насколько избирательны (права, тенант, дата);
- обновления: частота вставок и удалений;
- экосистема: гибридный поиск, квантование векторов, шардирование;
- команда: кто будет эксплуатировать.
Пример расчёта. 10 млн фрагментов × 1024 измерения × 4 байта ≈ 40 ГБ только векторов — это уже повод думать о сжатии, отдельном сервере или специализированной базе.
Права доступа. В pgvector — фильтр в том же запросе. В отдельной базе — метаданные доступа дублируются и синхронизируются, поиск с фильтром проверяется на полноту.
Что хотят услышать
- Преимущества pgvector: одна база, транзакции, права.
- Когда нужна специализированная база.
- Расчёт объёма и нагрузочный замер.
- Стоимость второй системы и синхронизации.
Проверьте себя
Один верный вариант. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✗pgvector не поддерживает индексы и годится только для тысяч векторов
- ✗Специализированная векторная база всегда лучше, даже для десяти тысяч документов
- ✓pgvector — до миллионов векторов; отдельная база — при огромной нагрузке
- ✗Вторая база не требует синхронизации данных и прав
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.