Amazon Web Services (AWS) has added a new ‘undo’ feature to its Aurora database engine. Called Backtrack for Amazon Aurora, the feature will allow users to quickly move an Aurora database to a prior point in time without having to restore data from a backup.
On several occasions, the developers compose the query and let it run to the production database. But later realize that they forgot to add some clauses to it, or dropped the wrong table, or made any other mistake.
The backtrack option will help the developers in such scenarios, by allowing them to pause the application and select the point in time they want to go back to. AWS said it will allow users to retain the log information going back in time up to 72 hours.
When a backtrack will be initiated, Aurora will pause the database, close the open connections, and drop the uncommitted writes. It will then roll back database to time before the error occurred.
Once the backtrack process completes, users can resume the application and proceed as if nothing really had gone wrong. Furthermore, if the users realize that they have gone back a bit too far with the process, then they can backtrack to a later time.
“I’m sure you can think of some creative and non-obvious use cases for this cool new feature. For example, you could use it to restore a test database after running a test that makes changes to the database. You can initiate the restoration from the API or the CLI, making it easy to integrate into your existing test framework,” wrote Jeff Barr, AWS Chief Evangelist, in a blog post.
Aurora is based on distributed and log-structured storage system, hence a new log record is generated every time a change is made to database. The log record is then identified by a log sequence number (LSN). When the backtrack feature is enabled, a first-in, first-out (FIFO) buffer in the cluster for storage of LSNs is provisioned. It enables quick access and recovery times measured in seconds.
Barr further wrote that backtrack feature will be applicable to newly created MySQL-compatible Aurora database clusters and to MySQL-compatible clusters that have been restored from a backup. The backtrack cannot be enabled for a running cluster.
Backtrack feature for Aurora is now available in all AWS regions where Amazon Aurora runs.