如何为 DynamoDB 设置 TTL?

1 分钟阅读
0

我想在 Amazon DynamoDB 表上设置生存时间 (TTL)。

简短描述

要管理 DynamoDB 表数据的数据生命周期,请使用 Amazon DynamoDB TTL

解决方法

配置 TTL

要在 DynamoDB 控制台中配置 TTL,请完成以下步骤:

  1. 打开 DynamoDB 控制台
  2. 在导航窗格中,选择表 (Tables),然后选择要修改的表。
  3. 在表详细信息页面中,在其他设置 (Additional settings) 下,为生存时间 (TTL) (Time To Live (TTL)) 设置选择开启 (Turn on)
  4. 开启生存时间 (Turn on Time to Live) 页面上,在 TTL 属性名称 (TTL attribute name) 中输入唯一的属性名称。
    注意:属性名称区分大小写,必须与读写操作中的属性定义相匹配。有关更多信息,请参阅开启生存时间 (TTL) 上的使用 AWS 控制台启用 DynamoDB TTL 部分。
  5. (可选)要预览您的 TTL 设置,请输入日期和时间。然后,选择运行预览 (Run preview)。控制台将显示您可以查看的项目示例列表。

开启 TTL 后,在 DynamoDB 控制台中该属性会被打上 TTL 标记。

**注意:**您可以使用 AWS API、AWS CLI 或 AWS CloudFormation 来开启 DynamoDB TTL。

关于 TTL 的最佳实践

更新 TTL 配置

如果您在使用 TTL 时收到错误,请查看您的 TTL 属性。TTL 属性名称必须与您的 DynamoDB 表中的其中一个属性相匹配。对于 TTL 属性,数据类型必须是数值型。对于 DynamoDB 表中 TTL 属性的值,该属性必须采用精确到秒的 Epoch 时间格式。

更新多个 TTL 属性值

要使用 API 更新多个 TTL 属性值,请运行扫描操作。然后,运行 UpdateItem 调用来更改 TTL 属性值。

按 TTL 属性进行筛选

由于 DynamoDB 没有架构,因此表中的某些项目可能没有 TTL 属性。要筛选数据,请运行扫描操作,并在 TTL 属性上使用筛选条件表达式,条件属性为“不存在 (does not exist)”。 有关更多信息,请参阅用于扫描的筛选条件表达式

设置项目的过期时间

最佳实践是在最近一次创建或更新项目时为项目设置过期时间。有关更多信息,请参阅计算生存时间 (TTL)

相关信息

处理过期项目

EpochConverter 网站上的 Epoch 和 Unix 时间戳转换工具

识别 DynamoDB Streams 中已删除的项目

AWS 官方
AWS 官方已更新 7 个月前
没有评论