AionDB v0.3 is live: vector search becomes a first-class engine surface with pgvector-style SQL, HNSW, IVF-flat, Qdrant-style filters, and published recall/latency benchmarks. See the v0.3 vector update.

v0.3 Vector Performance

v0.3 ships a vector benchmark harness. It measures HNSW raw, HNSW with product quantization, IVF-flat at different probe counts, and brute-force exact search as the recall reference.

Run it from the repository:

cd benchmarks/vector-compare
cargo run --release

Default dataset:

SettingValue
Vectors50000
Dimensions96
Queries200
k10

Current Snapshot

Latest local run:

BackendBuild msRecall@10Mean usp50 usp95 usp99 us
AionDB HNSW raw365710.996942387901567417233
AionDB HNSW PQ747420.99413072123551765918471
AionDB IVF-flat nprobe=84180.46680982712231766
AionDB IVF-flat nprobe=324160.8632572247436033977
Brute-force exact01.000993095201429318991

What The Numbers Show

HNSW raw is the high-recall path: 0.996 recall@10 on the default run.

HNSW PQ keeps recall high at 0.994 recall@10 while exercising the product-quantized search path and exact rescoring.

IVF-flat is the fast-build path: about 416-418 ms build time on this dataset. With nprobe=32, it reaches 0.863 recall@10 at about 2.57 ms mean query latency.

Brute-force exact remains in the benchmark as the ground truth. That keeps every approximate result tied to a measurable recall target instead of a standalone latency number.

v0.3 surface

Vector performance is a normal evaluation surface in v0.3. SQL users create vector indexes through pgvector-style DDL. RAG workloads combine nearest-neighbor search with Qdrant-style metadata filters. Application data stays in one catalog with relational, graph, and vector access paths. Benchmark output includes build time, recall, and latency in one table.

The default run is self-contained. Provision external pgvector and Qdrant targets separately for service-to-service comparisons.

Raw Output

vector-compare  (n=50000  d=96  queries=200  k=10)

backend                        build_ms   recall@k    mean_us     p50_us     p95_us     p99_us
----------------------------------------------------------------------------------------------
aiondb hnsw (raw)                 36571      0.996       9423       8790      15674      17233
aiondb hnsw (pq)                  74742      0.994      13072      12355      17659      18471
aiondb ivf-flat (nlist=64,nprobe=8)        418      0.466        809        827       1223       1766
aiondb ivf-flat (nlist=64,nprobe=32)        416      0.863       2572       2474       3603       3977
brute-force (exact)                   0      1.000       9930       9520      14293      18991

Related pages: