当前位置:  开发笔记 > 后端 > 正文

MongoDB作为主数据库?

如何解决《MongoDB作为主数据库?》经验,为你挑选了2个好方法。

我已经阅读了很多MongoDB.

我喜欢它提供的所有功能,但我想知道是否可以将它作为我的应用程序的唯一数据库,包括存储敏感信息.

我知道它会影响ACID中的耐用性部分,但作为解决方案,我将在不同位置拥有1个主设备和2个从设备.

如果我这样做,是否可以将它用作主数据库,存储一切?

更新:

让我们这样说吧.

我真的需要一个文档存储而不是传统的dbms来创建我的灵活应用程序.但是,如果我有多个数据库复制和主从,MongoDB是否足够可靠地存储客户敏感信息?因为据我所知,一个主要的缺点是它会危及ACID中的D. 所以我用多个数据库来解决它.

现在没有重大问题,例如数据丢失问题?

有人告诉我,使用MongoDB,客户可能需要支付两次费用.有人可以启发这个吗?



1> kristina..:

是的,MongoDB可以作为应用程序唯一的数据存储.使用复制并确保您了解安全写入和w.

有人告诉我,使用MongoDB,客户可能需要支付两次费用.有人可以启发这个吗?

我猜是谁告诉你这是在谈论最终的一致性.一些NoSQL数据库最终是一致的,这意味着您可能会有冲突的写入.但是,MongoDB不是一致的(就像关系数据库一样).



2> 小智..:

您的应用程序是否灵活与您使用"nosql","文档数据库"或正确的RDBMS绝对无关.没有人使用你的应用程序会关心任何一种方式

如果您在编码时需要灵活性,那么您应该研究一下框架,比如ActiveRecord for Ruby,它可以使DB接口更加简单,通用和强大.在这个级别,您可以获得更多不仅仅是更改数据库,甚至可以变得与数据库无关,这意味着您可以在不更改任何代码的情况下更改数据库.实际上,我发现ActiveRecord通过减轻繁琐且容易出错的"与SQL混合的代码"来使我的工作效率提高很多倍.

实际上,如果您觉得需要无模式数据库,那么对于关键数据,您做错了什么.您正在为项目的关键需求提供自己的便利,或者无知以为您以后不会遇到问题.迟早,缺乏一致性会咬你的屁股,很难!

我觉得你对RDBMS很敏感,因为你对所有的术语,语法和声音CS原则都不太满意.

相信我,如果您要创建任何有价值的应用程序,那么首先要学习SQL,ACID和良好的数据库原则要好上百倍.只需阅读基础知识,即可随时随地掌握您的知识.对我们每个人来说都是一样的,需要时间,但你从一开始就学会做正确的事.

像MongoDB这样的低级工具和同等产品只是为你提供了无限多的弹药来射击自己.他们让它看起来很容易.然而,实际上,他们为你,编码员留下了艰苦的工作,而一旦你理解了基础知识,RDBMS将为你处理更多的事情.

为什么要使用电脑,如果你想要更多的工作,你可以回到纸上.设计将是轻而易举的,实施可以超快.完成.除了它当然是不对的.

在现实世界中,我们不能忽视一致性,数据库设计和更多合理的CS原则.这就是为什么首先研究它们并继续学习的好主意.

不要买进炒作.你在这里询问关于MongoDB的问题,但包括你真的需要它的功能.凭借25年的计算机经验,我根本就不买它.如果您创造性地思考,可以使RDBMS做任何您想要的事情,或者可以利用框架来避免错误和浪费时间.

将ACID属性制作成MongoDB似乎对我来说更多的工作,并且根据经验,听起来像是徒劳的练习,而不是使用已经设计的东西来满足这些目的.

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有