Implementing and Working with Backups and Restores in DynamoDB

1 hour
  • 3 Learning Objectives

About this Hands-on Lab

In this lab, we will explore utilizing on-demand and point-in-time recovery backups for DynamoDB tables. Additionally, we will create scheduled backups using Lambda. A DynamoDB table has been provided with a small amount of data to facilitate creating and restoring DynamoDB backups.

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Enable Point-in-Time Recovery Backups, Create Manual Backup, and Start Restore of Manual Backup
  1. Log in to the AWS Management Console with the provided credentials.
  2. Navigate to DynamoDB.
  3. Select the PetInventory table.
  4. Click the Backups tab.
  5. In the Point-in-time Recovery section, click Enable.
  6. Click Enable.
  7. To create a manual backup of the PetInventory table, click Create Backup.
  8. Once the backup is available, select it and click Restore backup.
Create a Lambda Function to Perform Scheduled Backups
  1. Navigate to Lambda and create a Lambda function that creates a backup of the table(s) specified in the function.
  2. Create a CloudWatch events trigger for the function that triggers the function every 10 minutes.
Verify Lambda Function Operation and Successful Table Restore
  1. Return to the DynamoDB console to verify backups are being created correctly by your function.
  2. Verify the table created from your manual backup has restored successfully. (This may take some time.)

Additional Resources

A client operating an online exotic pet store has requested that we implement a backup strategy for them. They have suddenly become very anxious about the possibility of losing data and have sent an email that simply reads "Please enable all of the backups for our PetInventory table!!!" In the spirit of their request, we need to enable point-in-time recovery backups, create a manual backup of their table, and create a Lambda function that will be triggered every 10 minutes to create a backup of the PetInventory table.

The code used for the solution in this lab can be found on GitHub.


What are Hands-on Labs

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!

Get Started
Who’s going to be learning?