【问题标题】:delete item by condition in AWS Dynamodb在 AWS Dynamodb 中按条件删除项目
【发布时间】:2017-05-15 04:57:27
【问题描述】:

DynamoDB 中的表如下所示:

partition_key, created_at

我打算删除基于created_at的项目-当数据太旧时,将其删除。我尝试了以下命令:

aws dynamodb delete-item --table-name my_table --condition-expression "created_at <= 1479655145317"

但它抱怨 aws: error: argument --key is required,我打算删除不基于分区键的项目,有什么建议吗?谢谢。

【问题讨论】:

    标签: amazon-web-services amazon-dynamodb


    【解决方案1】:

    必须使用分区键才能从 DynamoDB 中删除项目。在不提供分区键的情况下无法删除项目。

    在上述情况下,您需要两个步骤。

    1)扫描或查询(如果created_at上有GSI)获取需要删除的分区键

    2) 使用delete item api根据分区键删除项目

    【讨论】:

      【解决方案2】:

      有点相关: DynamoDB 的生存时间 (TTL) 允许您定义表中的项目何时过期,以便可以自动从数据库中删除它们。 http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/TTL.html

      【讨论】:

        猜你喜欢
        • 2023-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-14
        • 1970-01-01
        • 2015-08-24
        • 1970-01-01
        相关资源
        最近更新 更多