aws-lambda - dynamodb keyconditionexpression 与 filterexpression 成本?

标签 aws-lambda amazon-dynamodb dynamodb-queries

我想知道当我在 dynamodb 中进行查询并使用 filterexpression 而不是 keyconditionexpression 时是否存在成本差异。

我需要创建索引才能使用过滤器表达式吗?

它会增加查询成本吗?

最佳答案

DynamoDB 查询操作,我们可以提供三样东西来选择/过滤数据。

  • 分区键:我们必须在 KeyConditionExpression 中提供它
  • Range/Sort Key:我们可以在 KeyConditionExpression 中提供缩小范围的查询
  • 任何其他属性:我们可以提供以进一步限制 FilterExpression 中的结果

要记住两点:

  • 查询消耗的 RCU 量仅取决于 KeyConditionExpression,因此,指定范围/排序键将限制读取/查询的数据量,这有助于节省成本。
  • FilterExpression 在查询完成后但在返回结果之前应用。这不会影响 RCU,也不会影响成本,但是,这将有助于返回给客户端的数据量。如果客户在 AWS 之外,那么我们只会节省网络数据成本。

关于aws-lambda - dynamodb keyconditionexpression 与 filterexpression 成本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66933595/

相关文章:

java - 根据 GSI 索引和范围键从 Dynamo 数据库获取所有列

amazon-web-services - 尝试从 AWS Lambda 但不是桌面访问 AWS Device Farm 时出现 SSL 证书错误

amazon-web-services - 如何将 xray 跟踪 ID 发送到 AWS 上的 API 网关?

amazon-web-services - AWS API Gateway 将 JSON 存储到 DynamoDB

java - 无法在 DynamoDB 上设置独占启动键

aws-lambda - 如何在扫描操作中使用 FilterExpression 查询 DynamoDB 中的对象数组

go - 扫描dynamodb表并在go sdk列表中使用包含

node.js - 在单个查询中将多个 JSON 对象插入 Dynamodb

amazon-web-services - 在 AWS 中安排流程

amazon-dynamodb - DynamoDB 本地 http ://localhost:8000/shell