Search

Vector search at object-storage scale.

Approximate nearest-neighbour retrieval over dense embeddings using HNSW. Sub-10ms p50 latency with 90%+ recall@10, served directly from your S3, GCS, R2, or MinIO bucket.

How it works

HNSW on object storage — not RAM.

Algorithm

HNSW graph traversal

ManyVector builds and queries Hierarchical Navigable Small World graphs stored as objects. The graph structure lives in your bucket — no proprietary disk format.

Latency

Sub-10ms p50 on hot namespaces

Hot namespaces are memory-cached at the query layer. Cold namespaces are fetched from object storage on demand and warmed automatically on first access.

Recall

90%+ recall@10 by default

Default HNSW parameters are tuned for high recall. You can adjust efSearch and M parameters per namespace for workloads that need different recall/latency trade-offs.

Distance metrics

Cosine, dot product, Euclidean

Choose the distance metric that matches your embedding model. Cosine similarity for normalized embeddings, dot product for unnormalized, L2 for spatial workloads.

Dimensions

Any embedding dimension

From 384-dimensional MiniLM to 3072-dimensional text-embedding-3-large. Set the dimension once at namespace creation — ManyVector handles the rest.

Scale

Billions of vectors per namespace

No cluster resizing required. Object storage scales to exabytes — your namespace grows with your data without any operational intervention.

By the numbers

Performance built for production.

<10ms

p50 query latency

90%+

recall@10 default

100B+

vectors per namespace

3

distance metrics

FAQ

Common questions

How does ManyVector achieve sub-10ms latency without keeping everything in RAM?

Hot namespaces are cached at the query layer. HNSW graph traversal runs against cached nodes, so most queries never touch object storage directly. Cold namespaces warm on first access.

What embedding dimensions are supported?

Any dimension from 64 to 4096+. Set it once at namespace creation — ManyVector handles storage and indexing automatically.

How does recall compare to fully in-memory databases?

With default parameters, ManyVector achieves 90%+ recall@10. Tune efSearch and M per namespace to trade recall for latency or vice versa.

Can I use different distance metrics across namespaces?

Yes. Distance metric is set per namespace. Run cosine namespaces alongside dot-product namespaces in the same account.

Start vector searching today.