New post Beyond OLAP - cutting the cost of batch ETL.

Your workload deserves its own engine.

Most databases are built to run any query. SynnoDB builds one for yours: it studies your workload, writes and compiles a specialized C++ engine, and optimizes it until it's order-of-magnitude faster than general-purpose systems, automatically and with no DBA in the loop.

An accelerator in front of your engine

SynnoDB synthesizes a bespoke engine for the queries it can accelerate. A workload-aware router sends those to the fast path, per query; everything else falls back to your existing engine, unchanged.

Incoming QueriesA continuous stream of queries from your workload.
SynnoDB-WL-RouterDetects, per query, whether SynnoDB has a synthesized fast path for it.
Bespoke EngineRuns the synthesized queries. Custom workload-specific, order-of-magnitude speedups.
General-purpose analytical engineYour existing engine. Answers every query SynnoDB has not synthesized. Correctly, always.
Synthesized queries
Unsupported queries
Shared data
Iceberg/Parquet

Get started in one line

Install the package, then synthesize an engine for your own workload.

python · synnodb
from synnodb import SynnoDB

# point SynnoDB at your SQL templates + parquet; the agent builds the engine
db   = SynnoDB(workload="my_workload", queries="1-5")
plan = db.createStoragePlan()                     # designs a bespoke storage layout
impl = db.createBaseImpl(storage_plan=plan.text)  # writes C++, compiles, verifies vs DuckDB

# then it's a drop-in for e.g. DuckDB: change one import and connect to the engine
import synnodb as duckdb
con = duckdb.connect(":memory:", engines="engines/")
con.execute(sql).fetchall()
# 11.78× faster than DuckDB - every result verified correct

See the engine we built

We synthesized analytical engines for TPC-H and CEB. Run them live in your browser, or look inside to see exactly what SynnoDB produces for a workload.

Run queries live

Live Playground

Connect to a server running the actual SynnoDB-generated C++ engine on TPC-H data. Pick any query, tweak parameters, and watch real execution times next to DuckDB and Umbra.

Look inside

Storage Explorer

Step through how the engine was built: workload analysis, the bespoke storage layout, the generated C++ per stage, the DuckDB query plan, and the code changes between stages, query by query.

Why SynnoDB

One-size-fits-one engines, built automatically for your data and queries.

Order-of-magnitude faster

Specialised storage layouts and hand-tuned-quality C++ kernels eliminate the overhead of general-purpose engines: 11.78× over DuckDB on TPC-H, every query faster.

Fully automated synthesis

An LLM agent designs the layout, writes the engine, compiles it, and verifies correctness against DuckDB, in minutes to hours, for about $10 in API cost. No DBA required.

Tailored to your workload

Point SynnoDB at your SQL templates and schema; it builds an engine specialised to those access patterns: column encodings, sort orders, and join artifacts chosen for you.