某电商应用核心数据,包括用户资料与订单记录存储在 DynamoDB 中。随着业务的发展,数据量不断增长,数据的安全性和可用性变得至关重要。为了防止数据丢失或损坏,需要定期对 DynamoDB 表进行备份,并能够在需要时快速、准确地恢复数据,以确保业务的连续性和数据的完整性,满足公司对数据管理的合规性要求。公司要求避免编写代码,尽量全部操作通过 AWS 管理控制台完成。
使用 DynamoDB 的原生功能,按需备份(手动备份)与时间点恢复(PITR)。按需备份可为指定表创建完整备份,备份数据存储在 Amazon S3 中,并且不会影响表的性能;使用时间点恢复(PITR),备份完全由 DynamoDB 进行管理,DynamoDB会持续备份数据,记录最近 35 天的增量数据变更,允许将表还原至该时段内任意一秒的状态。两者结合,既满足定期归档需求,又提供了精细的恢复粒度,全程通过控制台点击即可配置,无需额外服务。
本次采用AWS Console界面完成作业。
注意:根据项目的具体情况,可以采用不同的实施方法。比如使用命令行(CLI)部署、代码部署 (CloudFomation、Terraform等)、以及其它开发语言(SDK)完成作业。
步骤一:创建手动备份
登录 AWS 管理控制台,进入 DynamoDB 服务界面。选中目标表,点击顶部“操作”下拉框,选择“创建备份”,输入备份名称(建议包含表名和日期,便于识别),无需额外配置参数,点击“创建”,等待备份状态变为“可用”。
步骤二:启用时间点恢复(PITR)
在 DynamoDB 服务界面,选中目标表,备份”选项卡中,启用“连续备份”功能。
步骤三:模拟数据丢失
进入目标表的“浏览项”页面,删除部分或全部数据,完成故障场景模拟。
步骤四:
恢复备份
在DynamoDB控制台左侧,备份列表中找到对应的备份,点击“恢复”按钮。在恢复设置中,指定新表的名称等参数,确认无误后点击“恢复”,DynamoDB 将开始恢复数据到新表。
1. 备份完整。在备份列表中查看目标备份的“大小”“创建时间”等信息,确认备份已成功生成且无异常。
2. 恢复完整。进入恢复后的新表,点击“浏览项”,查看表内数据,确认已删除的数据全部恢复,且数据内容、字段格式与原始数据完全一致。