mongodb - 所以......这个NoSQL的东西

我一直在研究 MongoDB,我很着迷。看来(尽管我不得不怀疑)作为交换以稍微不同的方式组织我的数据库,我获得了与免费 CPU 和 RAM 一样多的性能?它看起来优雅且灵活,但我不会像使用 Rails 那样快速交易。那么有什么问题呢?关系数据库给了我什么我用 Mongo 做不到或根本做不到的事情?换句话说,为什么(除了现有 NoSQL 系统的不成熟和拒绝改变)整个行业没有从 MySQL 跳槽?

据我了解,随着您的扩展,您可以让 MySQL 为 Memcache 提供数据。现在看来,我可以从一开始就使用同样性能的东西。

我知道我不能跨关系进行交易......这什么时候会很重要?

我读过 http://teddziuba.com/2010/03/i-cant-wait-for-nosql-to-die.html但据我了解,他的论点基本上是使用真正工具的真正企业不需要避免使用 SQL,所以觉得需要放弃它的人做错了。但是没有哪个“企业”需要像 Facebook 或 Google 那样处理几乎同样多的并发用户,所以我真的不明白他的意思。 (沃尔玛有 180 万员工;Facebook 有 3 亿用户)。

我真的对此很好奇...我保证我不会拖钓。

最佳答案

我也是 MongoDB 的忠实粉丝。话虽如此,它绝对不是 RDBMS 的批发替代品。 Facebook 拥有 3 亿用户,但如果您的某些 friend 有一次没有出现在列表中,或者偶尔请求时缺少其中一张相册,您会注意到吗?可能不是。如果你的状态更新在几分钟内没有传到你所有的 friend ,这有关系吗?几乎不。如果沃尔玛的 Assets 负债表不同步,有人会失去理智吗?肯定的。

NoSQL 数据库在关系不严格且数据完整性可能不同步的“模糊”环境中表现出色。当数据集极其复杂和关系密切(因此得名)时,RDBMS 仍然很重要,并且它们需要保持纯净。

在过去 30 年中,我们一直在将 RDMBS 系统用于这两种情况,因此对 NoSQL 的大力插入。我们现在有一个更适合许多情况的工具。事实上,有些人会争论最多。但是没有人会争论所有。

https://stackoverflow.com/questions/3183067/

相关文章:

mongodb - 在 mongodb 中运行 javascript 脚本(.js 文件),包括 j

mongodb - 如何在 Mongo 中描述一个集合?

python - 如何使用 PyMongo 在 MongoDB 中创建新数据库?

MongoDB - $size 的参数必须是一个数组,但类型为 : EOO/missing

mongodb - 在 MongoDB 中查找最大的文档大小

.net - 我应该使用哪个 NoSQL 数据库进行日志记录?

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

node.js - 为什么我们应该使用 mongoose ODM 而不是直接使用 Mongodb 和

mysql - 何时使用 MongoDB

mongodb - Mongoose 中权重的全文搜索