我正在尝试使用mongodb作为我的主数据库。我想保存mongodb中的所有数据,如帐户数据(电子邮件,密码,ID ....)。
但mongo是一个新的数据库,没有sql与sql(mysql,postgresql)相比没有新的。
所以我不确定使用它保存所有数据是个好主意。
如果您有任何想法或意见,请告诉我。如果您不喜欢mongo,请添加您的建议。
PS:我的项目是一个简单的轻量级博客服务,具有良好的UI设计。用户可以将他们的服务或提取时间线链接到他们的博客中。
答案 0 :(得分:5)
MongoDB和其他NoSQL数据库不是MySQL或任何其他RDBMS的直接替代品。它们是具有不同优点/缺点的不同工具。这就是说MongoDB非常适合博客服务,如果你正确使用它,就没有明显的耐久性问题。 MongoDB支持诸如即发即弃写入之类的内容,这些内容显然不像MySQL INSERT那样安全。但是,MongoDB具有更安全的写入模式,可确保将写入复制到大多数节点。
简而言之,当你纯粹看“它能否正确保存我的数据”时,没有针对MongoDB的有效参数,但它是一个与MySQL不同的工具,因此它附带了它自己的一套规则。确保你了解它们。
答案 1 :(得分:0)
就稳定性而言,尽管mongodb是新的,但有许多生产用户成功使用mongo,mongodb website上有完整的列表。如果正确完成,mongodb实现应该像mysql一样稳定。
然而,更大的问题是何时使用mongodb以及使用哪种类型的用例。为每种类型的持久性抛出Relational数据库的日子已经一去不复返了。查看Martin Fowler撰写的this博客文章,其中描述了所谓的 polygot persistence 或使用多个持久性平台来满足单个特定需求应用。
Mongodb是一个面向文档的数据库,其中存储单元是一个json文档。因此,如果您的实体或多或少是自包含且不需要交叉引用或查找其他实体,则不支持联接,您可以说mongodb是合适的。我不会尝试在mongodb中建模社交网络。例如,mongo适合的一些典型情况是电子商务网站的产品目录,其中每个产品是文档,或者是用于存储和检索运行时日志的系统。
所以,回答你的问题,是的,你可以使用mongodb来存储你的所有数据,是的,如果设置正确,它将足够稳定以满足你的需求,但它可能不是每种类型用例的最佳选择。