node.js - 当 mongodb 的好处应该是无模式时,为什么 mongoose 使用模式?

标签 node.js mongodb mongoose

我是 mongodb 的 super 新手。我正在使用 mongoose 从 node.js 访问 mongodb,并且知道如何让事情正常工作,但我认为我不明白为什么它会以这种方式工作。

最重要的是,当 mongodb 的突出特点之一是它没有模式时,我不明白为什么 mongoose 有“模式”。有人可以启发我吗?谢谢。

最佳答案

没有架构的数据是无用的。你从 MongoDB 得到一个文档,你用它做什么?阅读一些领域?您需要知道这些字段的名称、类型和含义。这是一个架构。

当人们说 MongoDB “没有模式”时,他们的真正意思是它不像 SQL 数据库那样强制执行模式。 MongoDB 将模式问题推到您的应用程序级别,您可以更灵活地处理它们。例如,为了向您的文档添加一个新字段,您不需要对您的集合执行全有或全无的 ALTER — 可能有数百万个条目。您只需将该字段添加到您的 ODM (Mongoose) 架构中即可。

关于node.js - 当 mongodb 的好处应该是无模式时,为什么 mongoose 使用模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13107976/

相关文章:

node.js - 使用 mongoose 返回单个嵌套数组对象

node.js - Node js、Mongoose计算总和并返回多个字段

node.js - 使用 Botkit startRtm 进行 Slack 用户状态订阅

javascript - 如何在node js中处理大数据

node.js - Mongoose 'static' 方法与 'instance' 方法

mongodb - 处理mongodb中的重音字符

node.js - Mongo Aggregate - 获取多个值在查询结果中出现的次数

node.js - 使用nodeJS Strapi连接mLab mongoDB数据库

node.js - 如何从字符串的[array]进行一般搜索

node.js - mongoose findByIdAndUpdate 仅更新文档中的一个字段