ScramDB vs Databend
Databend is an elastic warehouse over object storage, which means a Raft-based meta service for consistency, stateless query nodes for compute and an S3-compatible bucket for the data: three components before the first query. It is also downstream of your transactional database rather than being it. ScramDB answered the same analytical workload faster from a single binary, and holds the transactions on that same copy.
Side by side
| ScramDB | Databend | |
|---|---|---|
| What you deploy | One binary, one process | A Raft meta service, query nodes and an object store |
| Transactional workload | Served by the same engine on the same copy | A warehouse, fed from your database |
| Isolation | Read committed, repeatable read and serializable | Multi-statement transactions with the isolation level not clearly documented |
| Referential integrity | Foreign keys and CHECK constraints, enforced | Not documented as enforced |
| Latency floor | Local disk, no object store in the path | Object storage, with a metadata service for consistency |
| Wire protocol | PostgreSQL wire protocol, every standard driver and BI tool | Its own HTTP handler and MySQL protocol |
| Branching | Fork the database instantly, or open it as it was at any past timestamp | Snapshot based time travel |
| AI and agents | A semantic layer inside the engine that agents connect to directly, bound by the caller’s own permissions | Native vector type with an HNSW index, a genuine strength |
Object storage is a cost as well as a feature
Separating storage from compute buys elasticity and adds a network hop to every read, plus a metadata service to make an eventually-consistent bucket behave transactionally. For a warehouse that runs batch reports, that is a good trade. For the database behind an application, it is latency you cannot get back.
When Databend is the right answer
Elastic warehouse analytics directly on object storage under Apache 2.0, where compute needs to scale to zero between workloads.
Other head to heads
Same wire protocol, same drivers, same SQL. A columnar engine and native-code execution underneath.
ClickHouse cannot hold your transactions, so it lives next to a real database with a pipeline between them. ScramDB is both.
No columnar storage, no vectorized execution, no parallel query in the community server. Every analytical scan is a row walk.
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