Fast Backup and Restore with MariaDB Xpand

Overview

MariaDB Xpand's Fast Backup and Restore feature is used to backup and restore Xpand tables:

  • Xpand's Fast Backup and Restore can be used by executing the BACKUP and RESTORE statements

  • Backup and restore operations are optimized using parallelism

  • Backups can be stored via AWS S3, GCP Cloud Storage, FTP, or SFTP

  • Backup and restore operations can't be executed via user-defined functions (UDFs) or triggers

Compatibility

  • MariaDB Xpand 5.3

  • MariaDB Xpand 6.0

  • MariaDB Xpand 6.1

Parallel Backup and Restore

Xpand implements Fast Backup and Restore as a binary backup mechanism that works at the row-level. Each node sends its data directly to the backup target in parallel, eliminating bottlenecks and allowing backup to scale with deployment size. Restore is handled similarly; the initiating node coordinates with other participating nodes in parallel to read from the dump file and restore replicas.

The structure of the dumped data consists of text files describing the schema and metadata about the backup. The dumped data also contains binary files of compacted row data and data consistency information. Modifying these files may make it impossible to restore from the backup.

Xpand uses a Cyclic Redundancy Check (CRC) during Backup and Restore. Calculating the CRC allows the Restore function to validate the data written during the Backup function. CRC adherence also requires that any failed backup or restore be restarted from the beginning.

Cloud-based Backup and Restore

Starting with MariaDB Xpand 6.1, backups can be stored in cloud-based object storage.

Storing backups in cloud-based object storage can result in cost reductions and can simplify administration:

  • Economical: Cloud-based object storage is often very low cost.

  • Flexible: Cloud-based object storage is available for both cloud and on-premises deployments.

  • Limitless: Cloud-based object storage is often virtually limitless.

  • Resilient: Cloud-based object storage is often low maintenance and highly available, since many services use resilient cloud infrastructure.

  • Scalable: Cloud-based object storage is often highly optimized for read and write scaling.

  • Secure: Cloud-based object storage is often encrypted-at-rest.

Cloud-based backup and restore has been tested with the following cloud storage options:

  • AWS S3

  • GCP Cloud Storage

Many cloud-based object storage services are compatible with AWS S3. MariaDB cannot make guarantees about all S3-compatible object storage services, because different services provide different functionality. If you have any questions about using specific S3-compatible object storage with Xpand, contact MariaDB Support.

Create and Restore Backups

Global Variables

The following global variables impact Fast Backup and Restore. The defaults provided are generally acceptable. These variables are not available by session.

System Variable

Description

Default

backup_backup_concurrency

The number of tables that can be backed up simultaneously.

1

backup_restore_concurrency

The maximum number of slices restored concurrently on each node.

16

backup_write_compression_level

Compression level from 1 (fastest) to 9 (best compression)

6