【发布时间】:2011-07-23 05:59:18
【问题描述】:
我想测试 NoSQL 世界。这只是好奇,而不是绝对需要(还)。 我已经阅读了一些关于 SQL 和 NoSQL 数据库之间差异的内容。我对潜在的优势深信不疑,但我有点担心 NoSQL 不适用的情况。如果我理解 NoSQL 数据库基本上错过了 ACID 属性。
有人可以举一个 ACID 关系数据库可以处理但 NoSQL 数据库可能会惨遭失败的现实世界操作(例如电子商务网站、科学应用程序或...)的示例,或者系统地由于某种竞争条件或停电等原因?
完美的例子是在不修改数据库引擎的情况下无法解决任何问题。 NoSQL 数据库性能不佳的示例最终将是另一个问题,但在这里我想看看理论上我们何时不能使用这种技术。
也许找到这样的例子是特定于数据库的。如果是这样,让我们以 MongoDB 来代表 NoSQL 世界。
编辑: 为了澄清这个问题,我不想争论哪种数据库更适合某些情况。我想知道这项技术在某些情况下是否会成为绝对的死胡同,因为无论我们如何努力尝试 SQL 数据库提供的某些功能无法在 nosql 存储之上实现。 由于有许多可用的 nosql 存储,我可以接受选择现有的 nosql 存储作为支持,但我最感兴趣的是存储应该提供的功能的最小子集,以便能够实现更高级别的功能(比如可以使用不提供 X...) 的商店。
【问题讨论】:
-
尝试在任何 NoSQL 人群中编写类似总账(簿记)应用程序......不太适合。
-
这个问题是关于数据库理论的,有具体的应用程序(如果证明没有解决方案,就知道什么时候不值得尝试为现实世界的问题找到解决方案)。这绝对是关于事实,而不是关于哪种技术更好的主观辩论