King

Postgres to Iceberg,
without the moving parts.

King continuously replicates your PostgreSQL tables into open Apache Iceberg format via WAL streaming. No Debezium clusters. No Kafka. No connectors that break at 2am.

CDCvia logical WAL
0Kafka brokers
OpenIceberg format
Why King

Replication shouldn't be a distributed system of its own.

Traditional change-data-capture means standing up Kafka, Debezium, schema registries, and connectors, then keeping them alive. King collapses that into a single binary reading the Postgres write-ahead log.

The traditional stack
Kafka brokers to provision, tune, and pay for
Debezium connectors that drift out of sync
A separate schema registry to keep consistent
On-call rotations for the pipeline itself
King
One binary reading the Postgres WAL directly
Schema changes tracked automatically
Output is open Iceberg, queryable with any engine
Deploy on-prem or let us run it for you
How it works

Three steps to an open lakehouse.

01 · CONNECT Point King at Postgres Create a replication slot and publication. King attaches to logical decoding, with no triggers, no application changes, no full-table locks.
02 · STREAM Stream the WAL Every insert, update, and delete flows through as it's committed. Schema evolution is captured automatically and written into the table metadata.
03 · QUERY Query open Iceberg Tables land in standard Apache Iceberg. Read them from DuckDB, Spark, Trino, or anything that speaks the open table format.
Setup

One config file. One command.

Describe your source and your catalog in YAML, then start streaming. King handles the snapshot, the catch-up, and the continuous sync, and picks up exactly where it left off after a restart.

  • Hadoop, Glue, and REST catalogs supported
  • Resumes from the last committed LSN
  • Runs as a single process, container or bare metal
king.yaml
# source database
postgres:
  url: "postgres://user:pass@db:5432/mydb"
  slot: king_slot
  publication: king_pub
  tables: ["public.orders", "public.users"]

# destination catalog
catalog:
  type: hadoop
  warehouse: ./iceberg-warehouse
  namespace: analytics
$ king start --config king.yaml
Deployment

Two ways to run King.

On-premises licensed
Deploy King on your own infrastructure with a perpetual or annual licence. Full control, full air-gap support, so no data ever leaves your network. Ideal for regulated and self-hosted environments.
Fully managed
We handle deployment, storage, and the query layer end to end, scaling on usage. You point us at a database and get queryable Iceberg tables, run by the people who built King.
Early access

Put King on your pipeline.

Tell us about your Postgres setup and what you want to query. We'll get you into King and respond within one business day.