NoSQL架构设计

时间:2019-10-21 15:27:04

标签: database-design nosql amazon-dynamodb

我正在开发一个需要数据库的应用程序。我为该应用程序选择了NoSQL(DynamoDB)。我的唯一ID被设置为一个用户子,但其有效负载是对象列表。列表中有191个这些对象。

COL1,   COL2
user1, list[191]
user2, list[191]
user3, list[191]

列表获取对象详细信息,例如:

{
  "district": "Haven Coast",
  "name": "Old Head of Kinsale",
  "position": {
    "lat": 51.619701,
    "lng": -8.542146
  },
  "seen": true,
  "stampAchieved": true
}

我认为用户可以从数据库中提取对象列表(大约30KB-限制为400KB)。用户将扫描QR码,该QR码将编辑所扫描QR对象中的字段。然后,新的列表数据将覆盖用户的列表数据。

当查看数据库时,看起来我正在为多个用户重用同一列表。我想知道我是否遵循此用例的最佳模式。我应该对列表数据进行列化吗?

COL1,    COL2,            COL2,               COL191
user1, district1{...}, district2{...},....district191{...}
user2, district1{...}, district2{...},....district191{...}
user3, district1{...}, district2{...},....district191{...}

如果有人做了类似的事情或有什么帮助我的东西,将不胜感激。

进行了更多研究,并看到了子文档的存储,如下图所示:

subdocumentimage

哪种用例类型最合适?

0 个答案:

没有答案
相关问题