我参与了几个项目,我的团队选择使用NoSQL DB(即MongoDB)而不是像PostgreSQL或MySQL这样的RDBMS。在我们的项目中途,我团队中的大多数人最终都不喜欢NoSQL数据库。我的一个理论是NoSQL的用例数量非常有限,所以我们可能首先选择数据库的原因是错误的。另一个理论是许多现代框架/宝石/插件/等最新设计时考虑到了RDBMS,因此使用ORM for NoSQL数据库感觉不自然(即Mongoid)与在Rails中使用ActiveRecord(SQL ORM)相比,例如在设计时考虑了ActiveRecord。也许未来的易用性会更好?
NoSQL应该是无模式的,但这真的有益吗?对于数据完整性,是否存在巨大的风险?
有人可以提供一个很好的实际用例,使用NoSQL DB对关系数据库真的有用吗?今天是世界末日所以我真的想知道!
答案 0 :(得分:-1)
NoSQL应该在有大量数据的情况下有用,而不需要RDBMS所需的那种要求。
我不能给你任何用例,因为我认为这是一个利基的事情。基本上,NoSQL听起来就像你需要它时会有一个很好的想法的系统,如果你不需要,那可能意味着你应该坚持使用RDBMS。
关于关系模型有很多话要说,所以我不会轻易放弃它。
这是Wiki,它非常易读: http://en.wikipedia.org/wiki/NoSQL