System Design Space
Граф знанийНастройки

Обновлено: 1 марта 2026 г. в 23:34

Qdrant: векторная база данных и архитектура

mid

Vector database для semantic/hybrid retrieval: collections/points, payload filters, HNSW, distributed mode и консистентность.

Источник

Qdrant

Официальный сайт Qdrant: позиционирование векторной базы данных, продуктовые возможности и deployment-модели.

Открыть сайт

Документация

Qdrant Docs: Overview

Ключевые концепции: collections, points, payload filters, distributed mode, consistency и performance-тюнинг.

Открыть docs

Qdrant - векторная база данных и движок similarity search для AI/ML систем. В системном дизайне её обычно ставят как retrieval-layer рядом с OLTP source of truth: хранение embeddings, payload-фильтры, hybrid search и low-latency top-k выдача для RAG/поиска.

История и контекст

8 июня 2022v0.8.0

Появление distributed mode

Qdrant получает режим распределённого кластера с шардированием и репликами для production-нагрузок.

8 февраля 2023v1.0.0

Стабилизация API и production adoption

Формируется стабильный API и экосистема SDK; Qdrant чаще используется как retrieval-layer в AI/ML системах.

8 декабря 2023v1.7.0

Sparse vectors и user-defined sharding

Добавляются sparse vectors и более гибкое управление распределением данных между shard-ами.

1 июля 2024v1.10.0

Multivectors и advanced retrieval

Появляется поддержка multivectors для сложных retrieval-сценариев с несколькими векторами на точку.

17 ноября 2025v1.16.0

ACORN и strict filtering improvements

Улучшается выполнение строгой фильтрации в HNSW traversal, что важно для фильтруемого поиска в RAG.

Ключевые архитектурные элементы

Коллекции, точки и payload

Базовая модель — коллекции с точками, где каждая точка содержит векторы и payload-атрибуты для фильтров.

Filterable ANN

Поиск строится вокруг ANN (HNSW) и payload-фильтрации, что позволяет совмещать семантику и бизнес-ограничения.

Durability и storage layout

WAL + сегменты обеспечивают durability, а on-disk/memmap/quantization помогают контролировать стоимость хранения.

Кластерный режим

Шарды и реплики масштабируют throughput; read/write consistency и ordering дают управление компромиссами.

Векторная модель данных и payload-фильтрация

Ниже интерактивный разбор data model Qdrant: dense/sparse/multivector схемы, named vectors, payload-фильтры и storage-параметры, влияющие на latency и стоимость.

Модель данных Qdrant: больше, чем "хранилище embedding"

Qdrant хранит точки с векторами и payload, поддерживает dense/sparse/multivector схемы и фильтруемый retrieval.

Почему Qdrant — это не только ANN по одному вектору

  • Точка может содержать векторы и структурированный payload для фильтрации и бизнес-атрибутов.
  • Dense и sparse представления можно комбинировать в гибридных retrieval-сценариях.
  • Named vectors и multivectors позволяют хранить несколько embedding-пространств на один объект.
  • Индексы и storage-конфигурация (on-disk, quantization) дают контроль над latency и стоимостью.

Dense vectors

Классический ANN retrieval по embedding в фиксированной размерности (например, 768/1024).

Ключевые элементы

Collection vectors configUpsert pointsQuery top-kDistance: Cosine/Dot/Euclid

Типичные сценарии

  • Semantic search
  • RAG retrieval
  • Recommendations

Пример

"vectors": { "size": 768, "distance": "Cosine" }

High-Level Architecture

Ниже high-level контур Qdrant в продуктовой системе: API и ingestion слой, коллекции/шарды, ANN + payload indexing, durability pipeline и кластерные механики.

Clients and API
HTTP + gRPCPython/JS/Rust SDKOpenAPIBatch upsert
Layer transition
Collections and sharding
CollectionsPointsShard routingReplication factor
Layer transition
Vector and payload indexing
HNSW (ANN)Sparse index (exact)Payload indexFilterable search
Layer transition
Storage internals
WALSegmentsMemmap / on-diskVersioned updates
Layer transition
Distributed consistency
Raft (topology)Read consistencywrite_consistency_factorWrite ordering
Layer transition
Operations
SnapshotsQuantizationOptimizerMonitoring

System view

Qdrant is typically used as a dedicated vector retrieval layer for semantic search and RAG, while transactional source-of-truth data remains in OLTP storage.

Retrieval capabilities

Dense vectorsSparse vectorsMultivectors + named vectors

RAG and filtering

Metadata filtersHybrid query patternsPayload-aware ranking

Operational trade-offs

Recall vs latency tuningReplica write overheadStorage/memory balancing

Read / Write Path через компоненты

Диаграмма объединяет write и read path с пояснениями: как Qdrant принимает upsert/query, обновляет индексы и возвращает top-k результаты в single-node и distributed режиме.

Read/Write Path Explorer

Интерактивный разбор прохождения vector-запросов через компоненты Qdrant.

1
Client Upsert
points wait=true
2
WAL
durability log
3
Segment Update
points + payload
4
Index Refresh
HNSW / payload idx
5
Replica Ack
consistency
Write path: upsert проходит через WAL и сегменты, обновляет индексы и подтверждается с учетом replica/consistency настроек.

Write path

  1. Клиент отправляет `upsert`/`set-payload` операции в коллекцию Qdrant.
  2. Запись проходит через WAL, затем попадает в сегменты и индексные структуры.
  3. В distributed mode изменения расходятся по репликам шарда в рамках настроек консистентности.
  4. `wait=true` и write consistency политики влияют на момент подтверждения операции клиенту.

Когда выбирать Qdrant

Хорошо подходит

  • Semantic search и RAG, где нужно хранить embedding и фильтровать по metadata.
  • Hybrid retrieval (dense + sparse), когда важны и семантика, и лексический сигнал.
  • Каталоги/контентные системы с tenant/category/date фильтрами и low-latency search.
  • Production vector layer с репликацией, snapshot-процессами и контролем latency/recall.

Стоит избегать

  • Сценарии с тяжёлыми реляционными join и транзакционной бизнес-логикой уровня OLTP СУБД.
  • Чисто аналитические OLAP-нагрузки с массовыми агрегатами по колонночным данным.
  • Команды, не готовые к тюнингу ANN-параметров и валидации качества retrieval (recall/precision).
  • Системы, где нужен универсальный SQL-движок вместо специализированного vector retrieval слоя.

Практика: DDL и DML

Ниже практические примеры Qdrant API: DDL-операции по созданию/тюнингу коллекций и индексов, а также DML-команды для upsert/query/payload обновлений.

Примеры DDL и DML в Qdrant

DDL управляет коллекциями и индексами, DML работает с точками, payload и vector query.

DDL в Qdrant — это операции над структурой коллекций: схема векторов, шардирование/репликация и payload-индексы.

Создание коллекции под dense + sparse retrieval

PUT /collections/products

Определяем векторную схему, distributed-параметры и режим хранения payload.

PUT /collections/products
{
  "vectors": {
    "size": 768,
    "distance": "Cosine"
  },
  "sparse_vectors": {
    "text": {}
  },
  "shard_number": 3,
  "replication_factor": 2,
  "write_consistency_factor": 1,
  "on_disk_payload": true
}

Payload index для фильтруемого поиска

PUT /collections/products/index

Индексируем поле category для более предсказуемой latency на фильтрах.

PUT /collections/products/index
{
  "field_name": "category",
  "field_schema": "keyword"
}

Тюнинг HNSW и quantization

PATCH /collections/products

Настраиваем индекс и компрессию под профиль recall/latency/cost.

PATCH /collections/products
{
  "vectors": {
    "": {
      "hnsw_config": {
        "m": 32,
        "ef_construct": 256
      },
      "quantization_config": {
        "scalar": {
          "type": "int8",
          "always_ram": true
        }
      }
    }
  }
}

Связанные материалы

Связанные главы

Чтобы отмечать прохождение, включи трекинг в Настройки

System Design Space

© 2026 Александр Поломодов