New: prepared statements, UPDATE and DELETE, and key lookups that seek — 0.143 ms through the gateway.Read the update

Performance & benchmarks

Engineered for Real-World Performance.

Every figure on this page comes from a dated benchmark report in the repository, with the host and the tool named. Numbers are indicative: a shared development host, one node, data in memory. The dedicated benchmark host is still ahead.

UltraFabric emblem on a circuit fabric with ingest, store, query, scale, analyze and AI-ready labels
Measured

Benchmark results

All runs on a shared development host, 3 CPUs / 6 GB; indicative, not a production promise. Raw result files accompany each report.

Key-value engine

Operations per second, YCSB-style, fsync on every write (19 Oct 2026)

UltraFabric RocksDB
0227k454kUltraFabric C: point reads: 412447 ops/sRocksDB C: point reads: 274508 ops/sC: point readsUltraFabric E: short scans: 22655 ops/sRocksDB E: short scans: 21927 ops/sE: short scans

TPC-H SF 0.1, seconds (log scale)

Row vs columnar storage vs DuckDB 1.1.3 one thread; all answers equal (22 Oct 2026)

Row Columnar DuckDB
0.0010.010.11Row Q1: 0.869 sColumnar Q1: 0.308 sDuckDB Q1: 0.0128 sQ1Row Q3: 0.71 sColumnar Q3: 0.166 sDuckDB Q3: 0.0085 sQ3Row Q5: 0.896 sColumnar Q5: 0.363 sDuckDB Q5: 0.0078 sQ5Row Q6: 0.535 sColumnar Q6: 0.074 sDuckDB Q6: 0.002 sQ6Row Q10: 0.771 sColumnar Q10: 0.245 sDuckDB Q10: 0.0229 sQ10

Progress across phases

Seconds per query as the executor and storage improved, 21–22 Oct 2026

Q1 Q6 Q10
0.02.34.6P2cP2dP2eP3c

Key benchmark results

What was measured, with the comparison engine on the same host and the same day

WorkloadUltraFabricCompared toNote
Point reads (YCSB C)412,447 ops/sRocksDB 274,508RocksDB keeps a lower p99
Short scans (YCSB E)22,655 ops/sRocksDB 21,927On par
Worst write latency23 ms371 ms beforeIncremental compaction
Write-heavy RSS32 MBRocksDB 26 MBDisk use smaller
TPC-H Q1, SF 0.1, columnar0.308 sDuckDB 0.0128 sRow storage 0.869 s; answers equal
TPC-H Q3, SF 0.1, columnar0.166 sDuckDB 0.0085 sRow storage 0.71 s; answers equal
TPC-H Q5, SF 0.1, columnar0.363 sDuckDB 0.0078 sRow storage 0.896 s; answers equal
TPC-H Q6, SF 0.1, columnar0.074 sDuckDB 0.002 sRow storage 0.535 s; answers equal
TPC-H Q10, SF 0.1, columnar0.245 sDuckDB 0.0229 sRow storage 0.771 s; answers equal

SQL through the gateway

pgbench, prepared statements, loopback TCP → gateway → node (23 Oct 2026); "before" is the same run one day earlier, without key seeks

StatementClientsAvg msBeforeStmts/s
Primary-key SELECT10.1435.526,984
Primary-key SELECT80.76741.710,608
GROUP BY with count and sum15.385.64189
Single-row INSERT10.9221.061,149
Single-row INSERT86.176.81,296

Honest reading: key lookups now seek (one row read instead of the tenant's ten thousand), so eight clients reach ten thousand lookups a second. Aggregates still read every row on one engine thread and inserts wait on the write-ahead log sync; parallel reads and group commit for inserts are the next levers.

Correctness

Tested before it is trusted

Speed numbers only matter if the answers are right. These are the counts behind that claim.

10,000,000Generated plansExecutor and every rewrite vs a reference interpreter; 0 divergences
994,405Isolation checksPaired databases differing only in hidden data; 0 interference
52 / 53Mutants caughtDeliberate defects the suite must notice; the survivor was equivalent
1,000,000Simulated crash pointsAgainst the write-ahead log; no acknowledged write lost
Benchmark methodology

How these were measured

1Environment

Shared development server, 3 CPUs and 6 GB cap, other services running, one client, data in memory. One node. No dedicated hardware yet.

2Datasets

TPC-H SF 0.1 generated by DuckDB's dbgen (lineitem 600 572 rows); YCSB-style key-value workloads; 10 000 and 100 rows per tenant for the SQL run.

3Tools

The project's own kvbench with a RocksDB oracle, uf-tpch against DuckDB 1.1.3, pgbench 16 over the gateway, and the nightly differential runner.

4Metrics

Operations per second, median of three runs including planning for TPC-H, average latency and statements per second for SQL, and exact answer equality against the comparison engine.

Reproducible

Every report names its commit, tool invocation and raw result file. Early-access teams receive the benchmark scripts with the build so the same runs can be repeated on their hardware.

Not yet measured

Multi-node scaling, replication overhead, p99 under mixed load, and anything on a dedicated host. No number is published for these until it exists; see the roadmap.

Run your own tests when early access opens.

Hosted databases come with the benchmark scripts and the comparison baselines.