本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
P oint-in-time 恢复:工作原理
亚马逊 Dynam point-in-time oDB 恢复 (PITR) 可自动备份您的 DynamoDB 表数据。本部分概述在 DynamoDB 中此过程如何运行。
启用 point-in-time 恢复
您可以使用 Amazon Web Services Management Console、 Amazon Command Line Interface (Amazon CLI) 或 DynamoDB API 启用 point-in-time 恢复。启用后, point-in-time 恢复功能将提供连续备份,直到您明确将其关闭。有关更多信息,请参阅将 DynamoDB 表还原到某个时间点。
启用 point-in-time 恢复后,您可以恢复到EarliestRestorableDateTime
和内的任何时间点LatestRestorableDateTime
。 LatestRestorableDateTime
通常比当前时间早五分钟。
注意
point-in-time 恢复过程始终会恢复到新表。
使用恢复功能 point-in-time恢复表
对于 EarliestRestorableDateTime
,可以使表还原到最近 35 天中的任何时间点。保留期为固定的 35 天(5 个日历周)并且无法修改。任意数量的用户都可以在给定账户中最多并行执行 50 个恢复过程(任何类型的恢复)。
重要
如果您禁用了 point-in-time 恢复,之后又在表上重新启用了恢复,则会重置可以恢复该表的开始时间。因此,您只能立即使用 LatestRestorableDateTime
还原该表。
当您使用恢复功能进行 point-in-time 恢复时,DynamoDB 会根据所选日期和时间 day:hour:minute:second
() 将您的表数据恢复到新表的状态。
对表进行还原,而不消耗表上的任何预置吞吐量。您可以使用恢复功能进行全表 point-in-time 恢复,也可以配置目标表设置。可以在还原的表上更改以下表设置:
-
全局二级索引(GSI)
-
本地二级索引(LSI)
-
计费模式
-
预置的读取和写入容量
-
加密设置
重要
在执行完全表还原时,目标表被设置为与源表相同的预置读取容量单元和写入容量单元(在请求备份时)。例如,假设一个表的预配置的吞吐量最近下降到 50 个读取容量单位和 50 个写入容量单位。然后,您将表的状态还原到三周前的状态,表在该时间的预配置吞吐量为 100 个读取容量单位和 100 个写入容量单位。在此情况下,DynamoDB 将表数据还原到该时间点,使用该时间的预置吞吐量(100 个读取容量单位和 100 个写入容量单位)。
您也可以 Amazon 跨区域恢复 DynamoDB 表数据,以便在与源表所在的不同区域创建恢复的表。您可以在 Amazon 商业区域、 Amazon 中国区域和 Amazon GovCloud (美国)区域之间进行跨区域恢复。只需为从源区域传输的数据以及在目标区域中还原为新表的操作付费。
注意
如果源区域或目标区域是亚太地区(香港)或中东(巴林)区域,则不支持跨区域还原。
如果您阻止在还原表上创建部分或所有索引,则还原操作会更快且更具成本效益。
必须在还原的表上手动设置以下各项:
-
自动扩展策略
-
Amazon Identity and Access Management (IAM) 策略
-
Amazon CloudWatch 指标和警报
-
标签
-
流设置
-
生存时间 (TTL) 设置
-
P oint-in-time 恢复设置
还原表所用的时间因多个因素而异。 point-in-time 恢复时间并不总是与表的大小直接相关。有关更多信息,请参阅还原。
删除启用 point-in-time 恢复功能的表
当您删除启用了 point-in-time 恢复功能的表时,DynamoDB 会自动创建名为系统备份的备份快照,并将其保留 35 天(不收取额外费用)。您可以使用系统备份将已删除的表还原到删除点之前此表所处的状态。所有系统备份都遵循 table-name
$DeletedTableBackup
标准命名约定。
注意
删除启用了 point-in-time 恢复功能的表后,您可以使用系统还原将该表还原到单个时间点:删除前的那一刻。不能将删除的表还原到过去 35 天内的任何其他时间点。