在AWS Dynamodb中按条件删除项目

时间:2017-05-15 04:57:28

标签: amazon-web-services amazon-dynamodb

DynamoDB中的表格如下所示:

  

partition_key,created_at

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

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

但它抱怨 aws:错误:参数--key是必需的,我打算删除不基于分区键的项目,有什么建议吗?感谢。

2 个答案:

答案 0 :(得分:0)

分区键必须从DynamoDB中删除该项。没有提供分区键,没有解决方法来删除项目。

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

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

2)使用delete item api删除基于分区键的项目

答案 1 :(得分:0)

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