【问题标题】:NoSQL (mongoDB) or Relational DatabaseNoSQL (mongoDB) 或关系数据库
【发布时间】:2011-04-09 20:18:23
【问题描述】:

我正在构建一个 node.js 应用程序,但我真的不知道是否可以使用像 MongoDB 这样的 NoSQL 数据库来满足我的需求。

基本上,我有 2 个模型。如果我从关系数据库的角度考虑,我会这样设置:

  1. FirstModel 只有几个属性,并且与 SecondModel 存在一对多关系。

  2. SecondModel 包含指向 FirstModel 的外键。

FirstModel的一个item会有很多SecondModel对应的item。

你知道 NoSQL 是否适合这方面吗?

【问题讨论】:

    标签: database nosql


    【解决方案1】:

    MongoDB 肯定可以处理这种模型。但是关于 MongoDB 还是 RDBMS 的决定更多地取决于您需要的查询:MongoDB 不支持 JOINs! 如果这对您的问题没问题或者可以通过一些非规范化来解决,那么 MongoDB 对您来说没问题。

    【讨论】:

      【解决方案2】:

      为了做出正确的决定,我们需要了解您对数据的访问模式。如果您想尝试 NoSQL,MongoDB 是一个非常灵活的默认设置。在这种情况下,SecondModel 可能会嵌入到 FirstModel 中——FirstModel 将包含一个SecomdModel 数组。这给了你连接的力量,代价是有点harder to use

      【讨论】:

      • 假设对于 FirstModel 的每条记录,都有 1000 条 secondmodel 的记录指向它。当 secondmodel 嵌入 firsmodel 时,这会是一个问题吗?我需要从第二个模型的记录中访问第一个模型的一个记录。不涉及连接表,这样可以吗?
      猜你喜欢
      • 1970-01-01
      • 2017-03-19
      • 2013-10-04
      • 2011-05-08
      • 2016-02-17
      • 2019-04-18
      • 1970-01-01
      • 1970-01-01
      • 2011-03-14
      相关资源
      最近更新 更多