Deployment
ScramDB is a UTAP (Unified Transactional Analytical Processing) database: transactions, analytics, and AI run on one live copy of your data. The same UTAP engine runs everywhere, from a single laptop to a distributed cluster. You choose the deployment that fits your scale, and nothing about your SQL, your PostgreSQL drivers, or your isolation guarantees changes as you grow.
One engine, from a single node to a clusterβ
There is no separate "cluster edition" and no rewrite between sizes. A single node and every node of a cluster run the identical engine.
- Single node: run ScramDB on one machine for development or for a production workload that fits on one box. Available on every edition, including Community.
- Distributed cluster: run the same engine across several machines for high availability and for scaling out capacity. Multi-node clustering requires an Enterprise (or Trial) license. See Distributed Cluster for the exact gate.
Cluster mode is opt-in. When a configuration file has no [cluster] section, ScramDB behaves exactly like the single-node engine, with zero distributed overhead. Adding a [cluster] section turns on multi-node operation. You do not change your application to move between the two.
Scenarios at a glanceβ
| Scenario | What it is | Start here |
|---|---|---|
| Local / development | One container or one process on your machine | Single Node |
| Production single-node | The full UTAP workload on one durable machine | Single Node |
| High availability | A cluster (for example 3 nodes) that keeps serving when a node is lost | Distributed Cluster |
| Scale out for capacity | Add nodes to spread data and run queries in parallel | Distributed Cluster |
Quick startβ
Pull the image and run a single node:
docker pull scramdb/scramdb:latest
docker run -d \
--name scramdb \
-p 5432:5432 \
-p 9090:9090 \
-v scramdb-data:/var/lib/scramdb \
scramdb/scramdb:latest
Connect with any PostgreSQL client:
psql "host=127.0.0.1 port=5432 user=scramdb dbname=scramdb"
The scramdb/scramdb image starts with --pg-no-auth, which trusts every connection with no password check. This is meant for local development or a network you already control. Before you expose port 5432 anywhere else, read Securing a node and turn authentication on.
Deployment guidesβ
π₯οΈ Single Node
Run on one machine for development or production, plus sizing basics.
π Distributed Cluster
Multi-node clusters with full serializable consistency, high availability, and scale-out. Requires an Enterprise license.
π³ Docker
Container configuration, security, volumes, and health checks.
π Requirements
System requirements, storage, and recommended hardware.