Joe is a Postgres query optimization assistant. Joe allows to boost the development process:
- eliminating annoying waiting time needed to provision copies of large databases for development and testing purposes,
- helping engineers understand details of SQL query performance.
Joe works on top of Database Lab . Every time when an engineer starts communicating with Joe, a new full-size copy of the database is provisioned.
This process is fully automated and takes only a few seconds, even for multi-terabyte databases. Such database copies are called “thin clones” because multiple clones share the same data blocks, so provisioning is super fast, and disk space consumption is very low. The clones are fully independent, so developers can modify databases. Finally, SQL execution plans are identical to production, which makes it possible to troubleshoot and optimize queries reliably without involving production databases.
Currently, Joe is provided only in the form of Slack chatbot. Slack was chosen to improve the level of collaboration of developers and DBAs. Alternative commucation ways (including beloved psql) are planned for future versions.
If you have Slack app installed, try the live demonstration:
- Add the Database Lab community to your Slack: https: // database -lab-team-slack-invite.herokuapp.com/
# joe-bot-demopublic channel.
any queries , apply any changes to database schema using exec , quickly rollback changes with reset .
What's new in version 0.5.0
Version 0.5.0 adds support of Slack API signed secrets, automated notifications when long-lasting jobs are done, various improvements in EXPLAIN plan processing, more. The full list of changes can be found in Changelog .
- What Is Joe Bot? https://postgres.ai/docs/joe-bot/what_is_joe .
https://postgres.ai/docs/joe-bot/ tutorial .
- Open-source repository:
https://gitlab.com/postgres- ai / joe /.
https://gitlab.com/postgres-ai/joe/-/ releases .
- Bug reports, ideas, and merge requests are welcome:
https: / /gitlab.com/postgres-ai/joe/issues/.
- Community Slack (English): https: //database-lab-team-slack-invite.herokuapp. com / . After joining, the live demo of Joe is available in the # joe-bot-demo channel: //database-lab-team.slack.com/archives/CTL5BB30 R .