Turning Back Time with Amazon Aurora Backtrack

Amazon Web Services (AWS) has introduced Amazon Aurora Backtrack, a new feature that provides an “undo option” for a production database. Backtrack can be enabled by customers for newly-launched Aurora database clusters by specifying how far back in time they want to rewind, and then using the database as usual.

This option applies to newly created MySQL-compatible Aurora database clusters and to MySQL-compatible clusters that have been restored from a backup. Users must opt-in when they create or restore a cluster; they cannot enable it for a running cluster. The feature is available now in all AWS Regions where Amazon Aurora runs.

The new feature was announced in a blog post by  Jeff Barr, chief evangelist for AWS.

“Aurora uses a distributed, log-structured storage system (read Design Considerations for High Throughput Cloud-Native Relational Databases to learn a lot more); each change to your database generates a new log record, identified by a Log Sequence Number (LSN),” he writes. “Enabling the backtrack feature provisions a FIFO buffer in the cluster for storage of LSNs. This allows for quick access and recovery times measured in seconds.”

If a user has gone too far back, Barr says, it is possible to backtrack to a later time. In addition, other Aurora features such as cloning, backups, and restores continue to work on an instance that has been configured for backtrack.

It is expected that people will find additional use cases for the new feature, adds Barr, such as restoring a test database after running a test that makes changes to the database. Users can initiate the restoration from the API or the CLI, making it easy to integrate into their existing test framework.