Что такое векторная база данных
Векторная база данных хранит объекты в виде числовых векторов (эмбеддингов) и специализируется на одной задаче: быстро находить «наиболее похожие» объекты по заданному вектору-запросу.
Стандартная схема работы в e-commerce:
Товар → Модель эмбеддингов → Вектор [0.23, -0.41, 0.87, ...] → Векторная база
Запрос → Модель эмбеддингов → Вектор [0.21, -0.39, 0.85, ...] → ANN-поиск → Топ-20 товаров
Косинусное расстояние между векторами = мера семантической близости. Два вектора рядом в пространстве — два объекта «похожи» по смыслу, независимо от формулировок.
Зачем нужна специализированная база
Обычная реляционная база не подходит для поиска по сходству в высокоразмерных пространствах. При каталоге из миллиона товаров и векторах размерностью 768 точный перебор на каждый запрос занял бы секунды. Векторные базы используют специализированные индексы:
| Индекс | Принцип | Когда применять |
|---|---|---|
| HNSW | Граф ближайших соседей | Высокая точность, умеренный объём |
| IVF | Кластеризация + поиск в кластере | Очень большие каталоги |
| PQ | Квантизация векторов | Экономия памяти |
HNSW (Hierarchical Navigable Small World) — наиболее распространённый: обеспечивает поиск за <10 мс при recall >95%.
Применения в e-commerce
Семантический поиск. Запрос «тёплая куртка для горных походов» → эмбеддинг → поиск по каталогу описаний товаров. Релевантные результаты даже без совпадения ключевых слов.
Рекомендации «похожие товары». Эмбеддинг просмотренного товара → поиск ближайших соседей в пространстве товаров. Работает на холодных товарах без истории взаимодействий.
AI Shopping Assistant и RAG. LLM-ассистент получает контекст через retrieval — векторный поиск по базе описаний, спецификаций и FAQ товаров.
Совет: для гибридного поиска (векторная релевантность + ключевые слова + фильтры) выбирайте базы с нативной поддержкой гибридного режима (Weaviate, Qdrant) или используйте pgvector совместно с полнотекстовым поиском PostgreSQL.
Популярные реализации
- Qdrant — Rust, высокая производительность, open source, хорошо подходит для self-hosted деплоя
- Pinecone — managed service, простая интеграция, serverless tier
- Weaviate — гибридный поиск, модульная архитектура
- Milvus — масштабирование на очень большие коллекции
- pgvector — расширение PostgreSQL, удобно если инфра уже на Postgres