【问题标题】:more than 100 items through batchGetItem in dynamoDB通过 dynamoDB 中的 batchGetItem 获取超过 100 个项目
【发布时间】:2020-01-25 08:13:11
【问题描述】:

如果您请求的项目超过 100 个,BatchGetItem 将返回 ValidationException 并显示消息“为 BatchGetItem 调用请求的项目太多”。 有没有办法通过batchGetItems处理dynamoDB中的100多个项目。

【问题讨论】:

    标签: amazon-dynamodb


    【解决方案1】:

    对于单个BatchGetItem 请求,获取的最大项目数为100,如documented by AWS

    单个操作最多可以检索 16 MB 的数据,其中可以包含多达 100 个项目。

    […]

    重要

    如果您请求的项目超过 100 个,BatchGetItem 会返回 ValidationException 并显示消息“为 BatchGetItem 调用请求的项目太多。”

    也没有像Query 这样的操作可用的分页。您可以做的是自己实现分页,以便每 100 个项目发出一个 BatchGetItem 请求。如果你走这条路,你还应该确保妥善处理UnprocessedKeys

    虽然不清楚您从 DynamoDB 一次获取 100 多个项目的用例是什么,但您的问题可能表明 DynamoDB 架构设计不佳。根据您的用例,重新设计架构和/或使用 Query 之类的操作可能是更好的选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-04
      • 2021-05-17
      • 1970-01-01
      相关资源
      最近更新 更多