启用生存时间 (TL) - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

启用生存时间 (TL)

您可以使用 Amazon DynamoDB 控制台或Amazon Command Line Interface(Amazon CLI) 启用生存时间。如需改为使用 API,请参阅Amazon DynamoDB API 参考

启用生存时间 (控制台)

请执行以下步骤,使用 DynamoDB 控制台启用生存时间:

  1. 登录到Amazon Web Services Management Console,DynamoDB 后在https://console.aws.amazon.com/dynamodb/

  2. 选择,然后选择您要修改的表。

  3. Table details (表详细信息)中,选择 TTL attribute (TTL 属性)旁边的 Manage TTL (管理 TTL)

  4. 管理 TTL 对话框中,选择启用 TTL,然后输入 TTL 属性 名称。

    Manage TTL (管理 TTL) 中有三个设置:

    • 启用 TTTTTL— 选择此设置可在表上启用或禁用 TL。完全处理更改最多需要一个小时。

    • TTL 属性— DynamoDB 属性的名称,用于存储项目 TTL 时间戳。

    • 24 小时备份流— 选择此设置可在表上启用 Amazon DynamoDB Streams。有关如何使用 DynamoDB Streams 进行备份的详细信息,请参阅DynamoDB Streams 和生存时间

  5. (可选)要预览在启用 TTL 时将被删除的部分项目,请选择 Run preview (运行预览)

    警告

    这将为您提供项目示例列表。此选项不提供将被 TTL 删除的项目的完整列表.

  6. 选择 Continue (继续) 以保存设置并启用 TTL。

现在 TTL 已启用,TTL 属性被标记为TTTTTL当您在 DynamoDB 控制台上查看项目时。

您可以通过将指针悬停在属性上来查看项目过期的日期和时间。

启用生存时间 (Amazon CLI)

  1. TTLExample 表上启用 TTL。

    aws dynamodb update-time-to-live --table-name TTLExample --time-to-live-specification "Enabled=true, AttributeName=ttl"
  2. TTLExample 表上描述 TTL。

    aws dynamodb describe-time-to-live --table-name TTLExample { "TimeToLiveDescription": { "AttributeName": "ttl", "TimeToLiveStatus": "ENABLED" } }
  3. 将项目添加到TTLExample表,使用 BASH shell 设置生存时间属性和Amazon CLI。

    EXP=`date -d '+5 days' +%s` aws dynamodb put-item --table-name "TTLExample" --item '{"id": {"N": "1"}, "ttl": {"N": "'$EXP'"}}'

此示例从当前日期开始,并在当前日期上增加 5 天来创建过期时间。然后,它将过期时间转换为纪元时间格式,以便最终添加项目到“TTLExample”表。

注意

为设置生存时间的过期值的一种方式是计算添加到过期时间的秒数。例如,5 天是 432000 秒。但是,人们通常习惯于从某个日期算起。

获取当前时间的纪元时间格式非常简单,如下例中所示。

  • Linux 终端:date +%s

  • Python: import time; int(time.time())

  • AWS 开发工具包: System.currentTimeMillis() / 1000L

  • JavaScript: Math.floor(Date.now() / 1000)