几天前,Hacker News 上有一篇文章登上了首页,标题大概是"两种情况下不应使用Mongodb",但我现在找不到它了...
- 有人知道我描述的那篇文章在哪里可以找到吗?
- NoSQL 会在什么情况下失败?
几天前,Hacker News 上有一篇文章登上了首页,标题大概是"两种情况下不应使用Mongodb",但我现在找不到它了...
按照任何合理的定义,“NoSQL”应该包括非SQL关系型数据库在其范围内(因为关系模型可以解决与其他NoSQL模型相同的需求,没有充分的理由排除它)。如果您接受这一点,那么NoSQL DBMSs的功能将是无限的。我们将永远不再需要SQL!
可悲的是,NoSQL思想领袖中似乎存在一种普遍的假设,即“NoSQL”必须意味着“非关系型”。这是非常不幸的,因为如果忽略了关系模型,NoSQL很可能永远无法替代SQL用于许多目的。(我认为找到一个长期的、关系型的SQL替代方案实际上是一件好事:)
通常情况下,当你不想使用SQL时,你就不想使用NoSQL!
我看到的大多数NoSQL解决方案似乎都在采用键值存储方法,并且不是关系型的。它们往往放弃了ACID属性。
因此,当你评估数据库系统时,当你不需要ACID、不想要关系代数、需要KV存储时,NoSQL方法就是你的朋友。
还要注意,有各种各样的“NoSQL”系统,它们都在忙着开发略微不同的方法。
NoSQL
意味着没有ACID
?我个人曾在非关系型数据库BerkeleyDB
上构建了一个拥有完整事务支持的应用程序。 - Quassnoi