node.js - 对于 DynamoDB 和 Node ,我应该使用数据映射器吗?

标签 node.js nosql amazon-dynamodb aws-sdk

我正在使用 Node 和 dynamodb 制作一个 Web 应用程序。对于sql数据库有Sequelize,对于mongodb有mongoose。但是对于dynamodb,我应该使用什么?我应该使用 dynamodb data mapper ? dyanmodb 还有其他替代方案吗?

最佳答案

为什么不使用 AWS 制作的呢? DynamoDB Data mapper 。它是一个 typescript 项目,因此它也带有类型。我不知道这个和你选的有什么区别。就我而言,它对于许多应用程序来说都是一个不错的选择。如果您的属性是 string、int、datetime...类型,那么它会对您有所帮助。但我无法将它与嵌套类型一起使用。如果您使用“映射”属性并且它具有一些可变的嵌套属性,则映射器无法处理该属性。只有更新项目功能。

简而言之,

  • 如果您要使用与 SQL 不同的无方案模型,其中每个条目的属性都不同
  • 如果您正在执行属性特定操作,例如仅更新 map 的一个字段而不是整个 map 属性(因为 UpdateItem 会更新所有嵌套字段)

那么我不建议使用映射器。相反,像我一样,对于此类项目,您可以创建小型 dynamodb 模块(如客户端)来处理所有 DocumentClient 操作。文档客户端在习惯一段时间后就会变得非常自然和容易使用。

关于node.js - 对于 DynamoDB 和 Node ,我应该使用数据映射器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50500379/

相关文章:

javascript - 如何创建 NoSQL 数据库以查找 2 个位置之间的距离

go - 如何使用 AWS SDK v2 在 dynamodb 中按键获取项目?

amazon-web-services - 将报告数据临时存储到 AWS DynamoDB 上?这是一个可行的解决方案吗?

ios - DynamoDB batchGetItem 返回错误 : "Supplied AttributeValue is empty"

javascript - ctx.fillText 不绘制连接

node.js - 如何使用node和mongodb进行查找?

node.js - 使用 gnuplot 在 Node js 中绘制和保存图形

orm - 相当于分布式键/值存储的 ORM?

mongodb - MongoDB 中的“AVG”和 'SUM' 功能,有什么提示吗?

node.js - 如何在 AWS Lambda 中使用 Node.js 列出我的所有 Amazon EC2 实例?