Getting Started with ScramDB
ScramDB is a UTAP database - Unified Transactional Analytical Processing. Transactions, real-time analytics, and AI/vector search all run on one live copy of your data, with no ETL and no second system, compiled to native machine code. It speaks the PostgreSQL wire protocol - connect with psql or any PostgreSQL driver.
Why ScramDB?β
Most databases force you to choose: fast analytics or easy SQL. ScramDB gives you both.
| Traditional OLAP | ScramDB | |
|---|---|---|
| Query language | Proprietary or limited SQL | Full PostgreSQL-compatible SQL |
| Query execution | Interpreted or vectorized | JIT-compiled to native machine code |
| Parallelism | Thread pool | Core-pinned morsel-driven (linear scaling) |
| Storage | Row-store or external files | Purpose-built columnar engine (Tundra) |
| Vector search | Separate vector store | Built-in similarity functions on the same data |
| GPU acceleration | Not available | Built-in for NVIDIA, AMD, Apple Metal |
| Client compatibility | Custom drivers needed | Any PostgreSQL driver works |
| Transactions | Often missing | Full MVCC with serializable isolation |
| Scale-out | A separate distributed system | Built-in serializable cluster, same SQL |
| Extensibility | Fixed function set | UDFs in JS, Python, Ruby, PL/pgSQL, and SQL, plus 15 analytics packages |
| Recovery | Snapshots or external tooling | Point-in-time recovery and instant branching |
No new query language. No proprietary SDK. No vendor lock-in. Just connect with psql and run SQL.
What is ScramDB?β
ScramDB is a UTAP (Unified Transactional Analytical Processing) database written in Rust. UTAP means one engine and one live copy of your data serving every workload at once, no CDC pipeline, no replica, no export, no lag:
- Transactions (OLTP) - Full MVCC writes with serializable isolation
- Analytics (OLAP) - Sub-second complex queries over millions of rows
- AI and vector search - built-in embeddings similarity functions on the same rows
- One copy, zero ETL - analytical queries see transactional writes the instant they land
- One node or a cluster - scale out to a serializable distributed cluster with the same SQL
- Programmable - user-defined functions in JS, Python, Ruby, PL/pgSQL, and SQL, plus 15 built-in analytics packages
- Durable and flexible - point-in-time recovery, instant database branching, and GPU acceleration
Quick Linksβ
π Quick Start
Get running with Docker in 2 minutes
π SQL Reference
Complete SQL compatibility reference
Next Stepsβ
- Quick Start - Docker setup and first connection
- First Queries - Create tables and run SQL
- SQL Reference - Full SQL compatibility