Amazon DynamoDB
开发人员指南 (API 版本 2012-08-10)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

备份和还原:如何工作

本节概述在备份和还原期间 Amazon DynamoDB 中发生的情况。

备份

在创建按需备份时,会对请求的时间标记进行编目。通过对上次完整表快照应用直到请求时所做的所有更改,来异步创建备份。备份请求将在瞬间完成处理,几分钟后即可用于还原。

注意

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

DynamoDB 中的所有备份都不消耗表上任何预置的吞吐量。

DynamoDB 备份不能保证项目间的因果一致性,但备份中更新之间的偏差通常远远小于一秒。

除了数据,备份中还包括以下内容(不能排除):

  • 全局二级索引 (GSI)

  • 本地二级索引 (LSI)

  • 预置的读取和写入容量

还原的表项目与 LSI 投影一致,最终与 GSI 投影一致。

必须在还原的表上手动设置以下各项:

  • 自动扩展策略

  • AWS Identity and Access Management (IAM) 策略

  • Amazon CloudWatch 指标和警报

  • 标签

  • 流设置

  • 生存时间 (TTL) 设置

在备份期间无法执行以下操作:

  • 暂停或取消备份操作。

  • 删除备份的源表。

  • 禁用表的备份 (如果正在备份该表)。

注意

目前,备份和还原只能在与源表相同的 AWS 区域进行。

您可以通过使用 AWS Lambda 函数来安排定期或未来的备份。有关更多信息,请参阅用于计划 Amazon DynamoDB 按需备份的无服务器解决方案

要了解如何执行设备,请参阅 备份 DynamoDB 表

还原

表还原操作不消耗表上的任何预置吞吐量。根据请求备份时的记录,目标表被设置为与源表相同的预置读取容量单位和写入容量单位。还原过程还将还原本地二级索引和全局二级索引。

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

注意

在还原操作中不能覆盖现有表。

还原表所需时间会基于多种因素而发生变化,还原时间并非一定与表大小直接相关。例如,由于并行处理的关系,还原一个 300GB 的表的用时可能与还原一个 3GB 的表的用时相同。以下是关于还原时间的一些考虑事项:

  • 将备份还原到新表。执行用于创建新表和启动还原流程的所有操作可能最多需要 20 分钟(即使表是空的)。

  • 对于数据在主键之间均匀分布的表,还原时间与最大单分区(按项目数)而不是整体表大小成正比。对于包含数十亿项目的最大分区,还原可能需要不超过 10 小时的时间。

  • 如果您的源表中包含的数据严重倾斜,则还原时间可能延长。例如,如果表的主键使用一年中的月份进行分区,而您的所有数据均来自 12 月,那么就出现了倾斜数据。

要了解如何执行还原,请参阅 从备份还原 DynamoDB 表

您可以将 IAM 策略用于访问控制。有关更多信息,请参阅将 IAM 用于 DynamoDB 备份和还原

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

本页内容: