我正在努力找出使用mongodb和mongomapper存储我的daat的最佳方法。
我有类别,每个类别都可以用许多属性来描述,所以长度以mm为单位,重量以kg为单位等。
我希望每个用户都能够创建自己的属性来描述一类产品。
所以例如:
用户A想要存储他的类别“汽车”,车轮数量和汽车长度(mm) 用户B想要存储他的类别“汽车”,车轮数量和长度(mm)和重量(kg)。
每个人的类别都相同,但属性可能不同。
我应该将其存储为类别集合,然后每个cateogry包含用户数组,每个用户包含属性anmes和units的哈希值?
或者我应该以某种方式将其分解为多个集合?
或者有没有人能想到更好的方式?
深嵌套是一个问题吗?
非常感谢advancfe寻求帮助和建议。 瑞克
答案 0 :(得分:0)
让我们从简单的答案开始。将属性存储为项目文档中的字段。这就是使用无架构数据存储的原因。
现在,关于哪个女巫属性与哪个项目放在一起。简短的回答:你描述的任何方式都有效;在效率方面都有一些权衡。
我认为你的模型是这样的:
我会拥有以下系列:用户,*类别(例如汽车,船只,房屋等......),属性。
属性集合将列出一个类别(例如汽车),该类别中项目的属性(例如燃料里程),以及使用该属性的user_id列表。