【问题标题】:How to organize this setup with MongoDB如何使用 MongoDB 组织此设置
【发布时间】:2013-04-17 03:19:56
【问题描述】:

我来自严格的 MySQL 背景,MongoDB 是我第一次接触 NoSQL。假设我有一堆用户和一堆组。

用户架构:

user_id
username
email

组架构

group_id
name
description

如果我使用的是 MySQL,并且我想建立每个用户及其所属组的关系,我会创建另一个具有 user_id -> group_id 关系的表。为这种关系创建另一个 MongoDB 集合是否合适?如果不是,该方案应该是什么样的?

【问题讨论】:

  • 如果用户的组与组的 group_id 具有相同的值,那么它们不是相关的吗?
  • @CoreyOgburn,是的,我的错,这是一个错字。
  • 我想这就是你的答案。如果您确实想将用户正确绑定到组,请使用Database Reference

标签: mongodb schema database nosql


【解决方案1】:

我建议您查看 MondoDB 站点上的data modeling documents。根据用户和组之间关系的性质,您的问题的答案会有所不同。您可能想要使用引用,或者您可以将组信息存储在用户文档中。

如果您将其嵌入到用户文档中,它可能看起来像这样:

{
   user_id: "the id",
   username: "Something",
   email: "something@something.com",
   group: {
             name: "some name",
             description: "some description"
          }
}

【讨论】:

    【解决方案2】:

    mongo 中没有模式...用户的组字段将包含一个实际的组对象,或者像组 ID 这样的引用。

    thismongo doc。

    【讨论】:

      猜你喜欢
      • 2014-03-27
      • 1970-01-01
      • 2019-05-28
      • 1970-01-01
      • 2016-07-12
      • 2018-12-16
      • 1970-01-01
      • 2018-08-24
      • 1970-01-01
      相关资源
      最近更新 更多