PostgreSQL
PostgreSQL (often called "Postgres") is a powerful, open-source object-relational database system (ORDBMS). It is known for its reliability, feature robustness, extensibility, SQL compliance (including advanced SQL features), and ACID (Atomicity, Consistency, Isolation, Durability) transaction guarantees.
It's used by many applications as their primary data store. In our context, Galaxy relies heavily on PostgreSQL to store user data, histories, workflows, tool information, and other metadata.
Deployment
PostgreSQL is deployed alongside our Galaxy instances. For more details on this process, refer to the galaxy page.
Automated Deployment Details
Deployment is managed through the postgresql
Ansible role. This role includes:
Configuration templates for PostgreSQL, backups, and backup schedules.
Tasks to schedule backups, configure, and run postgres.
Configuration
Configuration values are defined in Ansible variable files. Since Postgres is deployed alongside Galaxy, the configuration values are kept alongside the galaxy variables.
Hosts sometimes overwrite configuration values. These host specific values are available in the host_vars folder.