Skip to main content

Database Lab Engine 2.0

ยท 4 min read

Database Lab 2.0 release

Database Lab Engine 2.0 for PostgreSQL releasedโ€‹

The Postgres.ai team is proud to announce version 2.0 of Database Lab Engine (DLE) for PostgreSQL, a modern database tool for building powerful development and testing environments based on thin cloning. Using Database Lab API or CLI (and if you are using Database Lab SaaS, GUI), on a single machine with, say, a 1 TiB disk, you can easily create and destroy dozens of database copies of size 1 TiB each. All these copies are independently modifiable and created/destroyed in just a few seconds. This can become a game-changer in your development and testing workflow, improving time-to-market, and reducing costs of your non-production infrastructure.

This release continues our strategy to automate all routine tasks such as initialization of the PostgreSQL data directory, data transformation, and snapshot management. In DLE 2.0, all these tasks can be flexibly configured in a single configuration file. As a result, building dev&test environments for projects with many databases (such as those that adopted microservice architecture) becomes much easier.

The previous versions of the Database Lab introduced the core technology: thin clone provisioning, based on either ZFS (default) or LVM. It was already possible to provision full-sized multi-terabyte database clones in just a few seconds and use them for a broad spectrum of tasks such as database schema changes verification, SQL query analysis, or general application testing.

Version 2.0 speeds up and empowers the initialization of DLE itself. Instead of using custom scripts for initial and continuous data retrieval, it is now possible to configure everything in a declarative manner to get the data and be up and running.

Updates in DLE 2.0โ€‹

  • Automated data retrieval: specify the source and the method of initializing the data directory and how it is to be updated
  • Both physical (pg_basebackup, WAL-G, more) and logical methods (dump/restore, Amazon RDS, Heroku Postgres, more) are supported (see the guide Database Lab Engine data sources)
  • Any managed cloud PostgreSQL offering is now supported, with additional features for Amazon RDS (see DLE tutorial for Amazon RDS and the guide Data source: AWS RDS)
  • For continuously updated physically initialized data directory (which effectively makes your DLE a specialized replica), snapshot management is fully automated: snapshots are created and destroyed based on the schedule defined in the configuration file (see the reference Job physicalSnapshot)
  • Basic data transformation and masking supported: specify any custom script that will be applied each time a new snapshot is prepared (option preprocessingScript in both logicalSnapshot and physicalSnapshot jobs, see the Configuration reference)
  • License changed to AGPLv3
  • The documentation is significantly extended: 3 tutorials, 26 user guides, 6 references, and counting: http://postgres.ai/docs

What's nextโ€‹

Check out:

Please send us any feedback you have โ€“ it is hard to overestimate its meaning for such a young project:

Database Lab Engine allows cloning PostgreSQL databases of any size in just a few seconds. This can save a lot of money for development and testing infrastructure, and at the same time, drastically improve development quality and time-to-market. Database Lab Engine is open-source software distributed under OSI-approved AGPLv3 license.

Database Lab Engine is equipped with API and CLI. Additionally, we at Postgres.ai continue developing the Enterprise version that offers GUI, authentication flexibility, and user management for Database Lab Engine API and CLI, more. The Enterprise version is in the "private beta" mode; we encourage you to sign up and request a demo.

Share this blog post:

Anatoly Stansler
Anatoly Stansler

Postgres.ai

Database Lab
Database Lab by Postgres.ai

An open-source experimentation platform for PostgreSQL databases. Instantly create full-size clones of your production database and use them to test your database migrations, optimize SQL, or deploy full-size staging apps.