zilliztech / zilliztech/VectorDBBench

[Feature Request] Support configurable NQ for concurrent vector search

Open
#873 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.2k
Forks
438
Avg merge
1d 4h
Merged PRs (30d)
1

Description

VectorDBBench sends one query vector per search request. Changing concurrency cannot
represent applications that send batched searches.

Add --nq (YAML: nq) to set the number of query vectors per concurrent request.
Default to 1 to preserve existing behavior. Start with Milvus and Zilliz Cloud
single-tenant vector performance cases, including filtered searches.

Expected behavior

  • Keep the configured concurrency list and record NQ in results.
  • Count successful query vectors per second; measure concurrent latency per batch request.
  • Keep serial latency and recall at NQ=1, concurrency=1.
  • Reject unsupported backends and workloads before data loading.

Example

Search an existing collection with two query vectors per request. The collection must
contain the selected dataset and a matching HNSW index.

vectordbbench milvushnsw \
  --uri http://localhost:19530 --collection-name VDBBench \
  --case-type Performance768D1M --m 16 --ef-construction 128 --ef-search 128 \
  --k 10 --nq 2 \
  --skip-drop-old --skip-load

YAML uses nq: 2. Omitting --num-concurrency uses the configured concurrency list.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by tracing the vectordbbench milvushnsw CLI and YAML configuration into the Milvus and Zilliz Cloud performance cases; verify the documented NQ, concurrency, latency, throughput, recall, result-recording, and early-rejection behavior for filtered and serial searches.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, databases, performance
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.