Skip to main content
All comparisons/ScramDB vs MariaDB

ScramDB vs MariaDB

MariaDB’s own project pages tell this story: ColumnStore’s server integration has long carried a beta label, and the DuckDB storage engine announced in 2026 is explicitly alpha and "not recommended for production at this time". Stock MariaDB on InnoDB took 147,906 seconds to answer the same questions. ScramDB answered them in 31.56 seconds, in production, today.

Faster
4,687x
ScramDB 31.6s against MariaDB 147,906s. Stock MariaDB on InnoDB, 1 query unanswered.
Faster from cold
785x
ScramDB 189s against MariaDB 148,049s. First touch, nothing cached.
Faster to load
12x
ScramDB 717s against MariaDB 8,875s. Full 100M row ingest.
Smaller on disk
5.2x
ScramDB 16.1 GiB against MariaDB 84.0 GiB. Same data, after load.
At a glance

Side by side

ScramDBMariaDB
Analytical engineColumnar analytics in the shipping product, todayColumnStore at beta server integration; the DuckDB engine is alpha and not recommended for production
ExecutionQueries compile to native machine code and run on every coreNo vectorized or JIT engine for InnoDB or Aria
TransactionsFull ACID up to serializable isolation, across one machine or manyInnoDB ACID, all four isolation levels, XA
Scale outTurn on clustering when you need it, across machines and across regionsGalera synchronous multi-master. Xpand distributed SQL is a separate Enterprise product
Wire protocolPostgreSQL wire protocolMySQL protocol
AI and agentsA semantic layer built into the engine that AI agents connect to directly, bound by the caller’s own permissionsMariaDB Vector: native VECTOR type and HNSW index, GA in 11.8
Row-level securityCREATE POLICY with USING and WITH CHECK, RESTRICTIVE and FORCE RLSNot present; views and privileges are the workaround
LicenseCommunity free to 64 GiB stored, Enterprise for clusteringGPLv2 for the server; some tools under the BSL

What the benchmark measured

The published run is stock MariaDB with InnoDB, and the result is 147,906 seconds against ScramDB’s 31.56. Forty-one hours against half a minute. It is the same structural story as MySQL: a row store, no parallel query, no vectorized execution.

The interesting number is the one MariaDB is chasing. The DuckDB storage engine plugin gets the analytics much closer, which is exactly why the project built it. It is also, in the project’s own words, alpha.

Vector search, honestly compared

MariaDB 11.8 ships a native VECTOR type with an HNSW index, and that is genuinely ahead of where ScramDB is: ScramDB stores embeddings in a text column with bundled cosine and dot-product functions, and a native vector type is on the roadmap rather than in the product. What ScramDB does bring to AI work is the semantic layer: an MCP server built into the engine, seventeen tools, structured filters that cannot be SQL-injected, and every call executed under the caller’s own roles and row-level security policies.

When MariaDB is the right answer

MySQL-compatible OLTP with Galera for synchronous multi-master availability, a GPL licence with no vendor gate, and now a GA vector type in the open source server.

The measurement, as of 5 September 2026. A full analytical workload over 100 million rows of real web analytics data, run on a 16 vCPU AWS instance. Ours is a single ScramDB node in its stock configuration, with the GPU off and nothing tuned for the test. Rival figures are those systems’ own published results for the same instance type. These are the numbers as of that date, not a permanent scoreboard: the engine is tuned continuously and it has got faster through every round of this work, so a later run should read better than this one.

Run it yourself in one line

One static binary, no dependencies. It picks its own config, listens on the postgres port 5432 and runs in the background.

$curl -fsSL https://scramdb.com/install | bash

Quick start · How the engine works · Talk to us

A full analytical workload over 100 million rows of real web analytics data, run on a 16 vCPU AWS instance, measured 5 September 2026. Ours is a single ScramDB node in its stock configuration, with the GPU off and nothing tuned for the test. Rival figures are those systems’ own published results for the same instance type. These are the numbers as of that date, not a permanent scoreboard: the engine is tuned continuously and it has got faster through every round of this work, so a later run should read better than this one.