본문 바로가기

AWS Database/AWS DynamoDB

[AWS Certificate]-DynamoDB Backup & Restore

Backup and Restore in Dynamo DB

 

  • Automatically encrypted, cataloged and easily discoverable
  • Highly Scalable - create or retain as many backups for tables of any size
  • Backup operations complete in seconds
  • Backup are consistent within seconds across thusands of partitions
  • No provisioned capacity consumption
  • Does not affect table performance or availability
  • Backups are preserved regardless of table deletion

Backup and Restore in DynamoDB

 

  • Can backup within the same AWS region as the table
  • Restores can be within same region or cross region
  • Integrated with AWS Backup Service (can create periodic backup plans)
  • Periodic backups can be scheduled using Lambda and CloudWatch triggers
  • Cannot overwrite an existing table during restore, restores can be done only to a new table (=new name)
  • To retain the original table name, delete the existing table before running restore
  • You can use IAM policies for access control

 


Backup and Restore in DynamoDB

  • Restored table gets the same provisioned RCUs/WCUs as the source table, as recorded at the time of backup
  • PITR RPO = 5 minutes approx
  • PITR RTO can be longer as restore operation creates a new table

 

Backup and Restore in DynamoDB

 

  • What gets restored:
    • Table data
    • GSIs and LSIs (optional, you can choose)
    • Encryption settings (you can change)
    • Provisioned RCUs / WCUs (with values at the time when backup was created)
    • Billing mode (with value at the time when backup was created)
  • What you must manually set up on the restored table:
    • Auto scaling policies, IAM policies
    • CloudWatch metrics and alarms
    • Stream and TTL settings
    • Tags

Demo


 

Continuous Backups with PITR

 

  • Restore table data to any second in the last 35 days!
  • Priced per GB based on the table size
  • If you disable PITR and re-enable it, the 35 days clock gets reset
  • Works with unencrypted, encrypted tables as well as global tables
  • Can be enabled on each local replica of a global table

 


Demo


 

Continuous Backups with PITR

 

  • If you restore a table which is part of global tables, the restored table will be an independent table (won't be a global table anymore!)
  • Always restores d ata to a new table
  • What cannot be restored
    • Stream settings
    • TTL options
    • Autoscaling config
    • PITR settings
    • Alarms and tags
  • All PITR API calls get logged in CloudTrail

Demo