代码之家  ›  专栏  ›  技术社区  ›  cbmeeks

设计MongoDB解决方案?

  •  0
  • cbmeeks  · 技术社区  · 15 年前

    我是一个RDBMS的人,我相信这个项目在MongoDB系统中会很好地工作。因为不同的原因,我认为与手头的问题无关。

    无论如何,我的系统将如下所示:

    Properties Available
      Houses
        House A
          123 Pine Street
        House B
          456 Main Street
    
    
    Realtors
      Sale
        Leads
          Properties
            House A
              123 Pine Street
          People Involved
            Moe Howard
            Larry Fine
            Shemp Howard
        Budgets
          Operating Budget Items
            $200 rentals
            $400 supplies
    

    如你所见,我有两个收藏。一个(“可用属性”)将在不同的时间从不同的来源生成,并将在任意数量的用户之间共享。大多数内容是静态的,不会经常更改。

    另一个收藏是“房地产经纪人”。

    现在,在我以前的RDBMS世界中,我将为潜在客户、人员、预算等创建表。 不过,我认为将所有信息保存在一个巨大的“记录”中会更好。一个“销售”记录将被保持一段时间(也许几周),然后关闭。对我来说,把所有的东西都放在一张唱片里太棒了。尤其是因为网站、笔记、照片等内部会存储大量通用和动态的信息。

    我是以正确的心态来面对这个问题吗?我很难放弃关系模型。

    谢谢你的建议和建议。

    1 回复  |  直到 13 年前
        1
  •  1
  •   Bill Karwin    15 年前

    我们不能回答“是”或“否”这是您数据的最佳设计。您已经描述了要存储的项目,但没有描述您打算如何查询它。

    关系模型非常适合于设计具有最小冗余的存储,并且支持最广泛的查询范围。

    面向文档的模型非常适合优化 具体的 查询。但是您需要提前知道哪些类型的查询是最有效的。

    TANSTAAFL .