node.js - DynamoDB 中的最大记录数

标签 node.js amazon-web-services amazon-dynamodb

我正在编写一个脚本,将 CSV 保存到 dynamoDB 表中。我正在使用 Node.js 和 aws-sdk 模块。一切似乎都是正确的,但我向 Dynamo 发送了超过 50k 条记录,而只有 1181 条记录被保存并显示在 Web 控制台上。

我尝试过不同数量的记录,这是我得到的最大计数,无论我尝试保存 100k、10k 还是 50k。 根据AWS的文档,记录数量不应该有任何限制,你知道还有哪些其他因素可能影响这个硬限制吗?

顺便说一句,我的代码正在捕获插入操作中的错误,并且在插入超过 1181 标记时我没有捕获任何错误,因此该模块并没有真正提供帮助。

任何额外的想法将不胜感激。

最佳答案

如果您使用 DynamoDb batchWriteitem 或其他批量插入,则需要检查响应中的“UnprocessedItems”元素。有时,批量写入超出了表的预配置写入容量,并且它不会处理所有插入,听起来就像这里发生的情况。

您应该检查插入的响应,如果有未处理的项目,请在代码中设置重试和指数退避计时策略。这将允许插入其他项目,直到处理完所有 CSV。

这是 Dynamo 的引用链接 BatchWriteItem如果您想仔细查看响应元素。祝你好运!

关于node.js - DynamoDB 中的最大记录数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52746253/

相关文章:

c# - node js中的Windows命名管道(首选共享内存)

amazon-web-services - 如何使用 cdk 创建其他类型的 AWS key

amazon-web-services - 如何配置 AWS ELB 以阻止某些 IP 地址? (已知的垃圾邮件发送者)

amazon-web-services - DynamoDB 物化图模式示例

java - 使用 Java API 在 DynamoDB 中查询

node.js - 在 gruntfile 中执行 shell 脚本并将结果赋值给变量

node.js - Joi有 "not"的概念吗?

node.js - 为移动应用程序进行 facebook 登录的正确方法是什么(使用 node.js/passport.js 服务器)

amazon-web-services - DynamoDB最终一致性读取与强一致性读取

java - 如何通过 Java 中的 Executor Framework 在 DynamoDb 中获得最佳批量插入率?