database-lab-engine is a free, open source orchestration & scheduling project written in Go and released under Apache-2.0. It has 2,717 GitHub stars, 84 forks and 23 open issues, and was last pushed 15 hours ago. On this registry it ranks #42 of 64 tracked projects in Orchestration & Scheduling, with 5 head-to-head comparisons available. It gained 3 stars over the last 3 tracked days.

What is database-lab-engine?

What it is

Database Lab Engine is an open-source Go project that provides database branching and thin cloning for PostgreSQL environments. It lives in the infrastructure and operations ecosystem, around database orchestration, CI/CD, and schema migration workflows. The project lets teams create many PostgreSQL environments from existing databases without copying all data for each environment.

The problem it solves is the cost and delay of building full-scale development, QA, staging, and test databases. Teams need production-like PostgreSQL data to validate migrations, analyze queries, and test changes before deployment, but copying large databases consumes storage, hardware, and time. DBLab uses copy-on-write cloning so new database instances can be created quickly and independently.

Key capabilities

  • It creates thin clones of PostgreSQL databases by using copy-on-write storage, avoiding full physical copies for each new environment.
  • It supports database branching workflows for development, testing, and migration validation across PostgreSQL deployments.
  • It integrates into CI/CD pipelines to test database changes and reduce the risk of production incidents.
  • It works with self-managed PostgreSQL and managed services such as AWS RDS, GCP Cloud SQL, Supabase, and Timescale.
  • It uses ZFS by default and supports LVM as a storage technology for thin cloning.
  • It manages snapshots of a PostgreSQL data directory and lets users select a snapshot when creating a fresh clone.

Who uses it and how

  • Development teams use it to create production-like PostgreSQL environments for feature work, testing, and query analysis without provisioning separate full-size databases.
  • Platform and database engineers use it to validate schema migrations and database changes in CI/CD pipelines before applying them to production systems.
  • Teams using managed PostgreSQL services can run DBLab on a separate virtual machine in the same region because direct physical connection and PGDATA access are not possible for services such as AWS RDS or Heroku.
  • Organizations can use it to provide temporary full-size database clones for SQL query analysis and optimization workflows.

Getting started

Users can install the free DBLab Community Edition by following the provided tutorial, or provision DBLab Standard Edition through the Postgres.ai Console or AWS Marketplace. The README also mentions a hosted demo at demo.dblab.dev using the token demo-token.

When to use it — and when not to

DBLab is useful when teams need many PostgreSQL clones or branches for development, testing, and migration validation, especially when storage and hardware cost are concerns. For managed PostgreSQL services, a self-hoster must operate a separate VM within the same region and rely on routine data refresh, which adds infrastructure management overhead. Its thin cloning depends on supported storage technologies such as ZFS or LVM.

project readme (upstream, from github) — read inline

Deutsch | Português (BR) | Русский | Español | Українська

DBLab Engine

twitter

⚡ Blazing-fast PostgreSQL cloning and branching 🐘

🛠️ Build powerful dev/test environments.
🔃 Cover 100% of DB migrations with CI tests.
💡 Quickly verify ChatGPT ideas to get rid of hallucinations.

Available for any PostgreSQL, including self-managed and managed services* like AWS RDS, GCP Cloud SQL, Supabase, and Timescale.

It can be installed and used anywhere: across all cloud environments and on-premises.


Latest release

CI pipeline status Go report

Contributor Covenant Community Slack Twitter Follow

Features | Documentation | Blog | Community & Support | Contributing


*For managed PostgreSQL cloud services like AWS RDS or Heroku, direct physical connection and PGDATA access aren't possible. In these cases, DBLab should run on a separate VM within the same region. It will routinely auto-refresh its data, effectively acting as a database-as-a-service solution. This setup then offers thin database branching ideal for development and testing.

Why DBLab?

  • Build dev/QA/staging environments using full-scale, production-like databases.
  • Provide temporary full-size database clones for SQL query analysis and optimization (see also: SQL optimization chatbot Joe).
  • Automatically test database changes in CI/CD pipelines, minimizing risks of production incidents.
  • Rapidly validate ChatGPT or other LLM concepts, check for hallucinations, and iterate towards effective solutions.

For example, cloning a 1 TiB PostgreSQL database takes just about 10 seconds. On a single machine, you can have dozens of independent clones running simultaneously, supporting extensive development and testing activities without any added hardware costs.

Try it yourself right now:

How it works

Thin cloning is fast because it is based on Copy-on-Write (CoW). DBLab employs two technologies for enabling thin cloning: ZFS (default) and LVM.

Using ZFS, DBLab routinely takes new snapshots of the data directory, managing a collection of them and removing old or unused ones. When requesting a fresh clone, users have the option to select their preferred snapshot.

Read more:

Where to start

Case studies

Features

  • Speed & scale
    • Blazing-fast cloning of PostgreSQL databases – clone in seconds, irrespective of database size
    • Theoretical max of snapshots/clones: 264 (ZFS, default)
    • Maximum size of PostgreSQL data directory: 256 quadrillion zebibytes, or 2128 bytes (ZFS, default)
  • Support & technologies
    • Supported PostgreSQL versions: 10–18
    • Thin cloning (CoW) technologies: ZFS and LVM
    • UI for manual tasks and API & CLI for automation
    • Packaged in Docker containers for all components
  • PostgreSQL containers
    • Popular extensions including contrib modules, pgvector, HypoPG and many others ([docs](http

readme truncated — read the full docs on github

Frequently asked questions

Is database-lab-engine free to use?

database-lab-engine is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does database-lab-engine do?

DBLab enables 🖖 database branching and ⚡️ thin cloning for any Postgres database and empowers DB testing in CI/CD. This optimizes database-related costs while

What is database-lab-engine written in?

database-lab-engine is primarily written in Go. Its source is publicly available at https://github.com/postgres-ai/database-lab-engine, and it has 2,717 GitHub stars.