我正在开发一个需要数据库的应用程序。我为该应用程序选择了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{...}
如果有人做了类似的事情或有什么帮助我的东西,将不胜感激。
进行了更多研究,并看到了子文档的存储,如下图所示:
哪种用例类型最合适?