支持从dynamoDB获取超过1000条记录

时间:2020-07-29 09:43:13

标签: aws-lambda amazon-dynamodb

嗨,我想支持从DynamoDB中获取1000多个记录的选项,此外还添加了一个选项,可通过APIgetaway将记录的列表发送到dynamodb。 (这两种情况目前都无法实现)。 有没有办法做到这一点?合适的Lambda函数是唯一的选择吗?

1 个答案:

答案 0 :(得分:1)

DynamoDB没有最多可容纳1000个项目的限制-我不知道您在其他层中施加了什么具体限制“ 1000”。

如果您想读取表中的所有项目或分区中的所有项目,则分别有ScanQuery请求,它们甚至可以带回数十亿条记录-但当然不是一个电话(您需要以称为 pagination 的方式进行连续的请求,并且还可以进行并行扫描。

但是,您似乎真正想要的是阅读一堆不相关的项,并为其指定键。要求是BatchGetItem。该请求实际上仅限于100个项目密钥(比您提到的限制小得多,为1000),并且即使正在读取的项目很小,也只能保证100的数字有效-否则您将超过响应大小限制,并且仅获取某些项目的回复。但这几乎不成问题-您的应用程序始终可以将10,000个项目的请求拆分为100个单独的请求,依次或什至并行发送所有这些批处理请求。