Question: I've got that code and I don't think that I really understand how the modulo returns the remainder, not good at maths..

Here is the code:

```
#import the datetime class
import datetime

#declare and initialize variables
strDeadline = ""
totalNbrDays = 0
nbrWeeks = 0
nbrDays = 0

#Get Today's date
currentDate = datetime.date.today()

#Ask the user for the date of their deadline
strDeadline = input("Please enter the date of your deadline (mm/dd/yyyy): ")

deadline = datetime.datetime.strptime(strDeadline,"%m/%d/%Y").date()

#Calculate number of days between the two dates
totalNbrDays = deadline - currentDate

#For extra credit calculate results in weeks & days

nbrWeeks = totalNbrDays.days / 7

#The modulo will return the remainder of the division
#which will tell us how many days are left 
nbrDays = totalNbrDays.days%7

#display the result to the user

print("You have %d weeks" %nbrWeeks + " and %d days " %nbrDays + "until your deadline.")

```

Answer: 
AWS have just [announced](https://aws.amazon.com/about-aws/whats-new/2017/11/aws-launches-amazon-dynamodb-backup-and-restore/) they will now offer a [native DynamoDB backup and restore function](https://aws.amazon.com/dynamodb/backup-restore/).

As of today, in most regions, you can create on-demand backups of DynamoDB tables. You can do this via the AWS console - click on a table and you will see a new Backup tab, or via an API call. Once you have created and named a backup you can restore to that point with a single click via the same console tab. You can also restore into new tables. All table artifacts (data, indexes etc) are backed up.

AWS promise no impact on your table performance and availability during backups.

At the moment its just 'on-demand' backups, meaning you have to create restore points manually. In early 2018 they will roll out "Point In Time Restore Points", meaning you simply enable backups and you can then restore to any point you require in the last 35 days.
As Stu mentioned, On-Demand backups are a feature built into the DynamoDB service (Accessible via the API, AWS Management Console and CLI as usual), which allows you to take a full backup of a table at a point in time.

This task has no impact on performance or availability to your tables. All backups are automatically encrypted, cataloged, easily discoverable, and retained until you explicitly delete them.

Additionally, you can restore these backups to a new table at any point.

If you would like to schedule the backups, that is also possible using CloudWatch Events and a Lambda function.

A detailed walk through on backing up, restoring and scheduling can be found here:
<https://www.abhayachauhan.com/category/aws/dynamodb/dynamodb-backups/>

HTH