Skip to content
Resources

Published benchmark report

Measurements.
With the setup attached.

Operational throughput, vector recall, and full-text relevance—read each result with its workload, hardware, and measurement boundary.

Read the boundary first

These runs measure different paths.

An HTTPS result includes network time. An in-process result does not. Compare workloads within their stated conditions.

What each measurement includesPublished test setups
01 / Remote HTTPSYCSB + BEIR
  1. Client laptopIndia
  2. HTTPS round trip~100 ms RTT to Mumbai
  3. Reference engine2 vCPU · 2 GB
02 / In-region HTTPSYCSB sweep
  1. Regional driverSame region as engine
  2. HTTPS requestClient concurrency recorded
  3. Configured tenant4 or 8 vCPU
03 / In-processANN-Benchmarks
  1. Rust testDevelopment machine
  2. Index searchSingle thread · AVX2
  3. Recall + timingsRelease build · no HTTP

The reference engine used substrate compression and a bounded memory guard. The in-region runs use separate production configurations. These published results do not establish an unthrottled engine ceiling or a service-level guarantee.

01 / Operational workloads

YCSB: reads and writes over HTTPS.

Five reported workloads: A, B, C, D, and F. Zipfian access on a 20K-row table, with 50,000 operations across the workloads.

MeasurementRemote HTTPSLatency in milliseconds
YCSB · reference engine, remote client
WorkloadMixops / secp50 (ms)p95 (ms)p99 (ms)errors
A50% read / 50% update2921041432020
B95% read / 5% update321921201580
C100% read14612555712200
D95% read latest / 5% insert338921191380
Fread-modify-write2151652252520

All five reported workloads recorded zero errors and no rate-limit hits. Workload E is not included in this dataset.

In-region sweep

Measured 11 June 2026

The same YCSB driver ran from a machine in the engine’s region against production-configuration tenants. The notes below are retained from the published run.

YCSB · in-region client and provisioned tenant limits
Setupops / secp99 (ms)Note
4-vCPU node1,046-at its provisioned ~1,000 req/s cap
8-vCPU node1,384117single client; the driver is the limit, not the engine
8-vCPU node, 4-client fan-out (read)4,9401730 errors; the wall at ~5,000 is the provisioned cap, not an engine ceiling

The four-client row reports read traffic. A dash means p99 was not supplied for that row. Provisioned rate limits and client concurrency are part of this setup.

Reproduction command from the report
python benchmarks/ycsb/run.py --record-count 20000 --op-count 10000 --workloads C,B,A,D,F

02 / Vector retrieval

Recall and query rate, together.

SIFT 128-dimensional vectors, a 100K-vector subset, and 1,000 queries. HNSW with M=16 and ef_construction=200, using a single-threaded AVX2 kernel.

MeasurementIn-processLatency in microseconds
ANN-Benchmarks protocol · SIFT 100K subset
ef_searchrecall@10QPSp50 (µs)p99 (µs)
100.286187.95,2088,170
200.115154.86,2799,685
500.232110.78,96611,313
1000.37873.913,18319,852
2000.56547.620,71826,153
4000.76528.434,95243,987
8000.91816.261,57076,478

The published rows are shown without smoothing or interpolation, including the non-monotonic recall at ef_search 10 and 20. Choose a recall target, then compare the query rate and tail latency at that operating point.

Reproduction scope

Record the exact machine and test.

This report identifies a Rust integration test on a development machine but does not include its invocation. The SIFT-1M path uses SIFT_DATA_DIR and was described for a 32 GB machine; no SIFT-1M result is published here.

Large-corpus scope

No measured 100M result is published.

IVF and IVF-PQ are separate index choices. This HNSW dataset does not measure their memory use, latency, or recall at larger corpus sizes.

Review index choices

03 / Full-text relevance

BEIR: SciFact retrieval quality.

NDCG@10 measures graded relevance in the first ten results. The Lucene BM25 reference is the baseline reported in the BEIR paper, Table 2.

Published corpusSciFactOne dataset from the BEIR suite
SciFact · OriginChainDB and published Lucene BM25 baseline
DatasetDocsQueriesOC NDCG@10Lucene BM25Δ
SciFact5,1833000.6620.665-0.003

The report used BM25 with default Anserini parameters and English tokenisation. The reported score difference is −0.003; the table does not compare every BEIR dataset.

Indexing rate
73 docs/sec
Query rate
67 q/s
Reproduction command from the report
python benchmarks/beir/run.py --dataset scifact

Make a comparison you can use

Repeat the workload that matters to you.

Run the listed commands in a checkout containing the benchmark harness. Keep the setup and the raw output alongside every result.

01

Match the conditions.

Record corpus size, query mix, concurrency, hardware, engine version, and network location. Keep provisioned limits visible.

02

Compare quality with speed.

For vector retrieval, report recall with latency and QPS. For full-text, retain relevance judgments and the dataset split.

03

Retain the full result.

Include tail latency, error counts, configuration, and run logs. Do not extrapolate a result to unmeasured workloads or corpus sizes.

These are published run results, not current service telemetry. The tables cover only the configurations and datasets shown above.

Plan a workload evaluation

Bring your workload

Put the database through your own test.