AWS DynamoDB: Point-in-Time Recovery

Sandeep Harikumar
Tensult Blogs
Published in
2 min readApr 17, 2018

This Blog has been moved from Medium to blogs.tensult.com. All the latest content will be available there. Subscribe to our newsletter to stay updated.

What is DynamoDB?

DynamoDB is AWS’s answer to NoSQL Database. DynamoDB is a fully managed cloud database that supports both document and key-value store models. Its flexible data model, reliable performance, and automatic scaling of throughput capacity make it a great fit for mobile, web, gaming, ad tech, IoT, and many other applications. For more information on the service visit here.

Point-in-Time Recovery

Point-in-Time recovery means restoring a set of data or configuration of a system from a time in the past. Since the data is very critical it is always important that we do the backup frequently. Even then, there are chances for loss of data inside a table due to accidental deletion outside the scheduled backup window. In such cases restoring a data set from point-in-time helps. In DynamoDB it is the newest and much-awaited addition. Some of the features of the Point-in-Time recovery are:

1. Flexibility in time:

Point-in-time allows you to restore a data from a time in the past, which can be an hour, a minute or even a second, any point in time during the last 35 days. For keeping the data for more than 35 days you should use On-Demand backup.

2. Continuous Backup

Once you enable point-in-time, the backup will start instantaneously and will continuously backup every data. The functionality can be enabled through AWS CLI, API’s, AWS Console or using your application code.

3. No overhead on your existing workload:

When you enable point-in-time recovery on your existing workload, no resources will be used from your workload to do the backup process. Thus there will not be any need to provide additional throughput on the existing tables.

4. Table Level

Backup happens at the table level i.e. the restored table will not be linked to your old table or production table whichever you’re trying to restore. Restore will always happen to a new table so that, the changes that happened in your production table can be replaced from the data in your restored table.

5. High Speed

Consider a table with a size of few megabytes or even terabytes, it takes only seconds to do the backup.

Nowadays, data is the most valuable asset for every company. In the event of a failure, your database backup is the only key to successfully restore your data. With point-in-time recovery, it is much easier and comfortable to work with DynamoDB. By leveraging the on-demand and point-in-time backup features you can easily accomplish both the long-term retention needs and accidental data loss recovery.

What’s next?

Now you know the importance of enabling backup for the critical data and you can use our open-sourced NodeJS script to enable backup for all your production tables in one go. Let us know if you have faced any issues while running this script.

--

--