我最近第一次使用MongoDB,发现它特别容易使用和高性能。这就引出了我的问题--为什么不使用MongoDB?
假设我正在实现一个Q&A应用程序。我的方法是在MySQL数据库中实现用户数据,然后使用MongoDB存储问题和答案-一个存储问题和所有回答的集合。
这种方法有什么问题吗?
发布于 2010-11-27 10:45:51
对于您的问题,MongoDB听起来是一个很好的应用程序,但是您有很多理由不使用它。
MongoDB不太适合需要以下需求的应用程序:
和其他强大的BI应用程序以及那些在传统
发布于 2013-01-25 15:01:00
MongoDB是一个出色的数据库,我喜欢使用它。这就是说,如果你来自SQL世界,它有一些陷阱。
除了酸和其他有充分记录的东西(在其他答案中也是如此),这些东西让我们大吃一惊:
repair DB或删除集合之前,为每个集合分配的空间将一直保持已分配状态。它在DB级别上被分配成巨大的块(数据文件),然后在需要时分配给集合(扩展区)。也就是说,在集合的分配空间内,被删除的文档确实为同一集合中的其他文档释放了空间。这是对概念的一个很好的解释:http://www.10gen.com/presentations/storage-engine-internalsfind()将返回哪些字段:(公平地说,这可能是唯一合理的方法-但它是不使用基于字符串的语言(如SQL)的结果) db.find({}, fields=[(a,1,)] db.find({}, fields=[(a,1,)]shell
这不应该被看作是对MongoDB的批评--我喜欢使用它,它已经被证明是一个可靠和高效的工具。但要正确使用它,你需要了解它的空间管理。
发布于 2010-11-27 06:03:52
可能的缺点:
SQL
MondoDB是一个很好的解决方案,在适用的情况下是一个很好的替代方案。如果你可以使用它,为什么不呢?
https://stackoverflow.com/questions/4288615
复制相似问题