【问题标题】:AWS Dynamodb BatchGet with FilterExpressionAWS Dynamodb BatchGet 与 FilterExpression
【发布时间】:2018-04-27 23:03:34
【问题描述】:

我想根据一些过滤器从 dynamodb 表中检索项目列表。在过滤器中,我有我的哈希键列表(应该返回具有该哈希键之一的记录)和记录上的几个过滤器,例如一个值为“已批准”的“状态”字段。因此,如果该项目具有我列表中的哈希键并且状态字段值为“已批准”,则应返回它。
我怎样才能做到这一点 ?
我不能使用 QUERY 因为根据我的理解它只需要 1 个哈希键值。
我不能使用 BatchGet,因为它不接受过滤器表达式。

【问题讨论】:

    标签: amazon-web-services amazon-dynamodb


    【解决方案1】:

    您可以使用BatchGet 获取项目,并通过您自己的功能对其进行过滤。

    Doc: Working with Query

    查询操作最多可以检索 1 MB 的数据。此限制在计算过滤器表达式之前应用。

    如您所见,使用过滤器表达式无法帮助您检索更多数据,这也无法节省您的读取容量(金钱)。所以我认为过滤本地或服务器端没有区别。

    如果您希望 dynamo 为您过滤数据,那么您可以尝试使用 "multi-query" 而不是 BatchGet

    这里有一些相关参考,What's the difference between BatchGetItem and Query in DynamoDB?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-05
      • 2017-11-26
      • 2018-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多