批量查询 DynamoDB 中的 GSI?

Batch query to a GSI in DynamoDB?

是否可以在 GSI 上使用 DynamoDBMapper 同时针对多个散列键值创建单个查询?例如,如果我尝试使用 GSI 获取 table Table 中的所有相关记录,我将遍历所有哈希键值并对每个哈希键值进行单独查询。

即目前我在做

    for (String s : listOfStrings) {
      Attribute thing = new Attribute();
      thing.setSomeField(s);
      DynamoDBQueryExpression<Attribute> queryExpression = 
         new DynamoDBQueryExpression<Attribute>()
            .withHashKeyValues(thing)
            .withIndexName("example-GSI")
            .withConsistentRead(false);
    }

但我想在批处理调用中完成所有操作,而不是 for 循环。

我查看了 DynamoDBMapper 文档,似乎有 none,但我只是想知道这里是否有人对这种情况有任何好的解决方案。

没有。 DynamoDB 不支持。当我需要 运行 查询多个散列键时,我使用循环并一次查询一个。如果愿意,您也可以发送并行请求。