Backing up and restoring

Backups

BigAnimal automatically backs up the data in your PostgreSQL clusters. Backups are stored in Azure Blob Storage, in the "hot" access tier with geo-zone-redundant storage (GZRS). You are responsible for the charges associated with backup storage; see Azure Blob Storage documentation for more information.

PostgreSQL clusters in BigAnimal are continuously backed up through a combination of base backups and transaction log (WAL) archiving. When a new cluster is created, an initial "base" backup is taken; thereafter, every time a WAL file is closed - by default, every 5 minutes - it is automatically uploaded to Azure Blob Storage.

Restores

In the event a restore is necessary - for example, in case of an accidental DROP TABLE statement - clusters can be restored to any point in time as long as backups are retained in Azure Blob Storage. Currently BigAnimal does not age out backups, so clusters can be restored to any time since cluster creation.

Cluster restores are not performed "in-place" on an existing cluster. Instead, a new cluster is created and initialized with data from the backup archive. Restores must re-play the transaction logs between the most recent full database backup and the target restore point. Thus restore times (i.e., "RTO") are dependent on the write activity in the source cluster.

You can restore backups into a new cluster in the same region.

Performing a cluster restore

  1. Select the cluster you wish to restore on the Clusters page in the BigAnimal portal.

  2. From Quick Actions, select Restore.

  3. On the Restore Cluster page:

    1. Fill in the required fields.

    2. In the Point in Time Restore field in the Source section, select Now on the calendar to restore to the last possible recovery point or choose a timestamp to restore further back in time.

    3. Review your selections in the Cluster Summary and select Restore Cluster to begin the restore process.

  4. The new cluster is now available on the Clusters page.