Zyron v0.3.0 is out

One engine.Both workloads.

Zyron runs three surfaces off one Rust codebase. An HTAP database takes transactions and analytics in a single engine, ZyronLake keeps shared-storage tables with branches and time travel, and a mesh lets one query reach every node.

Prebuilt binaries for Linux and Windows x86_64. Works with existing drivers and psql.

zyron-cliconnected ยท localhost:5432
Scroll

65.1Ktps

Peak OLTP throughput

3.0GB/s

Columnar scan throughput

40ms

Cold boot to first query

703Ktxn/s

Durable group commit peak

Measured on a single 24-core machine, release build. Every figure comes from committed result files in the repository's benchmarks directory.

How Zyron works

01 / 04

Writes arrive

Transactions land over the wire. The hot path is lock-free, and every commit is fsynced through group commit before the client sees an acknowledgement.

02 / 04

The row heap

Fresh rows live in an MVCC heap tuned for OLTP. Point reads, updates, and high-concurrency writes run under snapshot isolation.

03 / 04

Columns form

A background thread compacts committed rows into .zyr columnar segments with per-column encoding. Queries filter the encoded data directly, and only surviving rows are materialized.

04 / 04

One mesh

Nodes peer over the wire, hosting a database, a lake, or both. A single SELECT reaches local heap tables, lake segments, and remote publications.

Keep scrolling to move the data

Platform

Three surfaces, one codebase

A database, a lake, and a mesh that ties them together. All three are reachable from any client language over the same wire protocol.

HTAP database

An MVCC row heap takes the transactions, the .zyr columnar format takes the analytics, and background compaction moves rows between them. One engine, one connection.

Explore

ZyronLake

A shared-storage table format on an append-only transaction log. Branches, time travel, versioned secondary indexes, and clustering, on local disk or object storage.

Explore

The mesh

Nodes peer over the wire. Any client can hit any node, and a single SELECT joins local heap tables to remote publications or a shared lake, with nothing in front.

Explore
Database noderow heap + .zyrDatabase + lakeboth surfacesEmbedded nodeinside an applicationLake nodereads shared .zyrObject stores3://lake, versioned per commit

Peer edges carry publications, subscriptions, and foreign scans. A query entering any node can reach all of them.

Features

The whole engine, built from scratch

No embedded SQL engine, no third-party storage layer. Zyron implements its own WAL, buffer pool, B+ tree, MVCC, parser, optimizer, vectorized executor, and wire protocol.

One engine, both workloads

Fresh writes land in an MVCC row heap tuned for OLTP. A background thread compacts them into the .zyr columnar format, and HybridScan reads both in a single operator.

Lock-free hot paths

LSN assignment, the WAL ring buffer, MVCC visibility checks, the buffer pool, and the B+ tree avoid mutexes on the query and write path entirely.

Durable by default

Every commit fsyncs the WAL through group commit before the client sees an acknowledgement. A committed transaction survives power loss, with no per-page fsync tax.

Time as a first-class dimension

AS OF TIMESTAMP and VERSION AS OF queries, copy-on-write branches, and bitemporal tables, with picosecond timestamps and hybrid logical clocks underneath.

Mesh, not monolith

A node can host a database, a lake, both, or run embedded. Nodes peer over the wire, and a single SELECT joins local heap tables to remote publications or a shared lake.

ZyronLake table format

Immutable .zyr files over an append-only transaction log. Branches, time travel, versioned secondary indexes, Z-order clustering, and change feeds live in the format itself.

Query-on-encoded

Dictionary, RLE, bit-packed, and FastLanes columns are filtered without being decoded. Only the rows that survive predicates are ever materialized.

Security inside the planner

Row-level security, column masking, ABAC, and three-state privileges are evaluated during query planning, not bolted onto an application tier.

Native search and ML

BM25 full text, HNSW vector search, and graph traversal share the engine with in-database model training, forecasting, and a feature store, all in plain SQL.

SQL

Standard SQL, plus the parts it was missing

Everything below runs over an unchanged PostgreSQL connection. No extensions to install, no sidecar services to operate.

Read any table as it was, by timestamp or by version.

-- Read the table as it existed at a point in time
SELECT * FROM orders AS OF TIMESTAMP '2026-05-06 09:00:00';

-- Or pin an exact committed version
SELECT * FROM orders VERSION AS OF 42;

Running in the next five minutes

Prebuilt binaries for Linux and Windows, no external dependencies, one command to a running server.