- Notifications
You must be signed in to change notification settings - Fork60
DBLab enables 🖖 database branching and ⚡️ thin cloning for any Postgres database and empowers DB testing in CI/CD. This optimizes database-related costs while improving time-to-market and software quality. Follow to stay updated.
License
postgres-ai/database-lab-engine
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
🛠️ 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* like AWS RDS, GCP CloudSQL, Supabase, Timescale.
Can be installed and used anywhere: all clouds and on-premises.
*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.
- 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:
- VisitPostgres.ai Console, set up your first organization and provision a DBLab Standard Edition (DBLab SE) to any cloud or on-prem
- Pricing (starting at $62/month)
- Doc: How to install DBLab SE
- Demo:https://demo.dblab.dev (use the token
demo-token
to access) - Looking for a free version? Install DBLab Community Edition byfollowing this tutorial
Thin cloning is fast because it is based onCopy-on-Write (CoW). DBLab employs two technologies for enabling thin cloning:ZFS (default) andLVM.
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:
- DBLab tutorial for any PostgreSQL database
- DBLab tutorial for Amazon RDS
- How to install DBLab SE using Postgres.ai Console
- How to install DBLab SE using AWS Marketplace
- Speed & scale
- Support & technologies
- Postgres containers
- Source database requirements
- Location flexibility: self-managed Postgres, AWS RDS, GCP CloudSQL, Azure, etc. No source adjustments needed
- No ZFS or Docker requirements for source databases
- Data provisioning & retrieval
- Physical (pg_basebackup, WAL-G, pgBackRest) and logical (dump/restore) provisioning
- Partial data retrieval in logical mode (specific databases/tables)
- Continuous update in physical mode
- Periodic full refresh in logical mode without downtime
- Recovery & management
- Fast Point in Time Recovery (PITR) for physical mode
- Auto-deletion of unused clones
- Snapshot retention policies in DBLab configuration
- Clones
- "Deletion protection" for preventing clone deletion
- Persistent clones withstand DBLab restarts
- "Reset" command for data version switching
- Resource quotas: CPU, RAM
- Monitoring & security
/healthz
API endpoint (no auth), extended/status
endpoint (API docs)- Netdata module for insights
The simplest way to show your support is by giving us a star on GitHub or GitLab! ⭐
- Shoot out a tweet and mention@Database_Lab
- Share this repo's link on your favorite social media platform
If DBLab has been a vital tool for you, tell the world about your journey. Use the logo from the./assets
folder for a visual touch. Whether it's in documents, presentations, applications, or on your website, let everyone know you trust and use DBLab.
HTML snippet for lighter backgrounds:
<ahref="http://databaselab.io"><imgwidth="400"src="https://postgres.ai/assets/powered-by-dle-for-light-background.svg"/></a>
For darker backgrounds:
<ahref="http://databaselab.io"><imgwidth="400"src="https://postgres.ai/assets/powered-by-dle-for-dark-background.svg"/></a>
Check out ourcontributing guide for more details.
Check out ourcontributing guide for more details.
More you can find inthe "How-to guides" section of the docs.
- DBLab Docker images
- Extended Docker images for PostgreSQL (with plenty of extensions)
- SQL Optimization chatbot (Joe Bot)
- DB Migration Checker
DBLab source code is licensed under the OSI-approved open source licenseApache 2.0.
Reach out to the Postgres.ai team if you want a trial or commercial license that does not contain the GPL clauses:Contact page.
- "Database Lab Engine Community Covenant Code of Conduct"
- Where to get help:Contact page
- Community Slack
- If you need to report a security issue, follow instructions in"Database Lab Engine security guidelines"
Many thanks to our amazing contributors!
Making DBLab more accessible to engineers around the globe is a great help for the project. Check details in thetranslation section of contributing guide.
This README is available in the following translations:
About
DBLab enables 🖖 database branching and ⚡️ thin cloning for any Postgres database and empowers DB testing in CI/CD. This optimizes database-related costs while improving time-to-market and software quality. Follow to stay updated.
Topics
Resources
License
Code of conduct
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.