The claim
SurrealDB published a post titled "SurrealDB 3.x by the Numbers," comparing its latest release against Postgres, MongoDB, Neo4j, and Redis across a range of read, write, and graph traversal workloads. The headline figures position SurrealDB as competitive with — and in some cases faster than — databases that have been in production use for decades.
That would be genuinely significant if it holds up. SurrealDB is a *multi-model* database, meaning a single engine handles relational-style queries, document storage, and graph traversal simultaneously. Most of its competitors in this benchmark are specialists: Redis is an in-memory key-value store, Neo4j is a dedicated graph database, Postgres is a relational system. Beating specialists at their own game, while also doing everything else, is a strong claim.
Why the methodology deserves scrutiny
The benchmarks were designed, run, and published by SurrealDB. That doesn't make them wrong, but it does mean they haven't been independently verified — a distinction worth stating plainly.
The more technical concern is **fsync**. Fsync is the system call that forces a database to flush writes to disk before acknowledging them as complete. It's the mechanism that prevents data loss if a server crashes mid-write. Enabling fsync costs throughput; disabling it makes numbers look better but removes a durability guarantee that most production deployments require.
The benchmark post's title explicitly flags fsync as a variable ("With Fsync"), which is more transparent than many vendor benchmarks. But the specific conditions — which databases had fsync enabled, at what settings, and whether those settings reflect each database's production defaults — are the kind of details that determine whether a comparison is apples-to-apples or apples-to-something-else entirely.
Hacker News discussion of the post surfaced additional questions: hardware specifications, whether connection pooling configurations were equivalent across databases, and whether the chosen workloads favor SurrealDB's internal architecture. These are standard concerns for any vendor benchmark, and they're not resolved by the post itself.
What the numbers can and can't tell you
Even taking the figures at face value, benchmark performance on a vendor's chosen workload is a weak proxy for performance on your workload. Database performance is notoriously sensitive to data shape, query patterns, index design, and concurrency levels. A result that holds at 10,000 records may not hold at 100 million.
That said, the benchmark does serve a legitimate purpose: it establishes that SurrealDB 3.x is at least in the same performance tier as its competitors on the tested workloads, which was not obvious for earlier versions of the database. For teams doing initial evaluation, that's useful signal — just not a final answer.
The bottom line
SurrealDB's multi-model approach is architecturally interesting, and version 3.x appears to have made real performance progress. But "vendor benchmark shows vendor product wins" is not a finding; it's a starting hypothesis. The database community will need independent replication — ideally using tools like TPC-C, YCSB, or LinkBench with disclosed hardware and default configurations — before these numbers carry real weight.
If you're evaluating SurrealDB for a production system, SurrealDB's own benchmark suite is a reasonable place to start building your test harness. It is not a reasonable place to stop.