MongoDB集合架构

时间:2014-06-04 11:23:22

标签: java mongodb

我是MongoDB的1天初学者,我试图不去考虑经典的relational方式,这在实施中似乎比我想象的要难得多。

我想要实现的是一个包含2个集合的简单数据库: 用户 - 兴趣

用户可能有很多兴趣。

这就是我现在所拥有的:

用户:

{
    _id: 'user1',
    language: 'EN', 
    firstName: 'Mehdi',
    interests: [
        interest1, 
        interest2, 
        interest3
    ]
}

兴趣:

{
    _id: 'interest1',
    name: 'Mobile'
}

所以我在这里有点困惑,

我应该将第一个商店兴趣文档存储在兴趣集合中,然后将它们作为对象检索并将它们存储为用户文档中的Binary Objects吗?所以我会有:创建兴趣文件 - > 检索 - > 创建用户文档并在其上存储兴趣

或者我应该将兴趣文档嵌套在用户文档中而不创建它们。所以我会有类似的东西:创建用户文档并在其上创建/嵌套兴趣文档

谢谢。

1 个答案:

答案 0 :(得分:0)

我不知道你的确切要求,但我可能只使用“用户”集合,并以你的方式嵌入兴趣。

如果您想要所有不同兴趣的列表,可以尝试:

db.users.distinct("interests");