

# 使用 AWS Backup 备份和还原 DynamoDB 表：工作原理
<a name="GettingStartedBackupsAWS"></a>

可以使用按需备份功能创建 Amazon DynamoDB 表的完整备份。此部分概述了备份和还原过程中发生的情况。

## 备份
<a name="GettingStartedBackupsAWS.backups"></a>

在使用 AWS Backup 创建按需备份时，会对请求的时间标记进行编目。通过对上次完整表快照应用直到请求时所做的所有更改，来异步创建备份。

每次创建按需备份时都会备份整个表数据。可以创建的按需备份的数量不受限制。

**注意**  
与 DynamoDB 备份不同，使用 AWS Backup 执行的备份不是即时发生的。

在备份期间无法执行以下操作：
+ 暂停或取消备份操作。
+ 删除备份的源表。
+ 禁用表的备份 (如果正在备份该表)。

AWS Backup 提供自动备份计划、保留管理和生命周期管理。这就不再需要自定义脚本和手动流程。AWS Backup 运行备份并在它们过期时将其删除。有关更多信息，请参见[AWS Backup 开发人员指南](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html)。

如果您使用的是控制台，则使用 AWS Backup 创建的任何备份均将在 **Backups (备份)** 选项卡上列出且 **Backup type (备份类型)** 设置为 `AWS_BACKUP`。

**注意**  
无法使用 DynamoDB 控制台删除 `AWS_BACKUP` 标记为 **Backup 类型**的备份。要管理这些备份，请使用 AWS Backup 控制台。

要了解如何执行设备，请参阅 [备份 DynamoDB 表](Backup.Tutorial.md)。

## 还原
<a name="GettingStartedBackupsAWS-restore"></a>

对表进行还原，而不消耗表上的任何预置吞吐量。可以从 DynamoDB 备份执行完整表还原，也可以配置目标表设置。在执行还原时，您可以更改以下表设置：
+ 加密设置

**重要**  
在执行完全表还原时，目标表被设置为与源表相同的预置读取容量单元和写入容量单元（在请求备份时）。还原过程还将还原本地二级索引和全局二级索引。

您可以将 DynamoDB 表数据的备份复制到另一个 AWS 区域，然后在新区域中还原它。可以复制备份，然后在 AWS 商业区域、AWS 中国区域和 AWS GovCloud（美国）区域之间还原备份。只需为从源区域复制的数据以及在目标区域中还原到新表的数据付费。

AWS Backup 将还原包含所有原始索引的表。

必须在还原的表上手动设置以下各项：
+ 自动扩缩策略
+ AWS Identity and Access Management (IAM) 策略
+ Amazon CloudWatch 指标和警报
+ 标签
+ 流设置
+ 生存时间（TTL）设置
+ 删除保护设置
+ 时间点故障恢复（PITR）设置

您只能从备份将整个表数据还原到一个新表。只能在还原的表变为活动状态后，才能向其中写入内容。

**注意**  
AWS Backup 还原是非破坏性的操作。在还原操作中不能覆盖现有表。

还原时间直接与表的配置（例如表的大小和基础分区的数量）以及其他相关变量相关。规划灾难恢复的最佳做法是定期记录平均还原完成时间，并确定这些时间对整个恢复时间目标的影响。

要了解如何执行还原，请参阅 [从备份还原 DynamoDB 表](Restore.Tutorial.md)。

您可以将 IAM policy 用于访问控制。有关更多信息，请参阅 [将 IAM 与 DynamoDB 备份和还原结合使用](backuprestore_IAM.md)。

所有备份和还原控制台及 API 操作都将被捕获并记录在 AWS CloudTrail 中以用于日志记录、持续监控和审核。