You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何低成本归档AWS DynamoDB并实现后续恢复?

Amazon DynamoDB 长期归档至S3并可恢复的实操方案

如果你需要暂停项目6个月以上,把DynamoDB数据归档到S3来压低成本,下面是一套完整的实操流程,涵盖导出、成本优化和后续恢复的全步骤:

一、把DynamoDB数据导出到S3

1. 控制台操作

  • 登录AWS控制台,找到DynamoDB服务
  • 选中要归档的表,切换到备份与恢复标签
  • 点击导出到S3,配置核心参数:
    • 导出范围:选整个表(如果只需要特定时间点的数据,也可以指定时间戳)
    • S3存储桶:选已有的桶,或者新建一个(建议开启版本控制和SSE-S3加密,保障数据安全)
    • 导出格式:选DynamoDB JSON,后续恢复时兼容性最好
    • IAM角色:用系统自动生成的角色就行,前提是它有DynamoDB导出和S3写入权限
  • 确认配置后启动导出,等待任务完成(时间长短看表的数据量大小)

2. AWS CLI命令操作

习惯用命令行的话,直接跑下面的命令(替换占位符为你的实际信息):

aws dynamodb export-table-to-point-in-time \
    --table-name your-target-table \
    --s3-bucket your-archive-bucket \
    --s3-prefix dynamodb-long-term-archive/ \
    --export-format DYNAMODB_JSON \
    --point-in-time-recovery-sampling-limit 1.0

--s3-prefix可以自定义归档的路径前缀,方便后续管理。

二、砍掉不必要的成本:处理原DynamoDB表

导出完成后,先验证S3里的数据完整(比如下载几个文件核对记录数),然后:

  • 直接删除原DynamoDB表:这是最彻底的降本方式,完全停止表的存储和读写费用
  • 要是怕误删,也可以先把表改成按需模式,同时暂停所有读写流量,但长期来看还是删表更划算

三、未来恢复DynamoDB表

当项目重启需要恢复数据时,按以下步骤操作:

1. 控制台恢复

  • 回到DynamoDB控制台,选备份与恢复 -> 导入S3数据
  • 选择存归档数据的S3桶和路径,配置导入参数:
    • 目标表:新建一个表,必须和原表的主键结构一致(提前记好原表的schema、索引、吞吐量配置)
    • 导入格式:选DynamoDB JSON
    • IAM角色:选拥有S3读取权限和DynamoDB写入权限的角色
  • 启动导入任务,等数据导入完成就行

2. AWS CLI命令恢复

用aws dynamodb import-table命令恢复,示例如下(注意替换占位符,尤其是主键结构要和原表完全匹配):

aws dynamodb import-table \
    --s3-bucket-source S3Bucket=your-archive-bucket,S3Prefix=dynamodb-long-term-archive/ \
    --input-format DYNAMODB_JSON \
    --table-creation-parameters '{
        "TableName": "restored-project-table",
        "KeySchema": [{"AttributeName": "user_id", "KeyType": "HASH"}],
        "AttributeDefinitions": [{"AttributeName": "user_id", "AttributeType": "S"}],
        "ProvisionedThroughput": {"ReadCapacityUnits": 5, "WriteCapacityUnits": 5}
    }'

要是忘了原表的结构,导出前可以用aws dynamodb describe-table --table-name your-target-table命令查看并保存。

四、关键细节提醒

  • S3存储优化:把归档数据放到S3智能分层或者直接归档到S3 Glacier Flexible Retrieval,能进一步降低长期存储成本(注意Glacier检索需要时间,根据你的恢复需求选择)
  • 数据验证:导出后一定要核对原表的条目数和S3导出文件的记录数,避免丢数据
  • 权限安全:给S3桶配置严格的权限策略,防止未授权访问归档数据
  • 信息留存:把原表的schema、索引、加密配置、吞吐量设置都记下来,恢复时才能完全复刻原表

内容的提问来源于stack exchange,提问作者Stephen Graham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 16:00:51