【发布时间】:2014-11-20 11:24:51
【问题描述】:
我是 MongoDB 的新手。我读到了MongoDB does not support multi-document transactions这里http://docs.mongodb.org/manual/faq/fundamentals/。
如果我想以原子方式将数据保存在两个集合(A 和 B)中,那么我不能使用 MongoDB 来做到这一点,即如果在 B 的情况下保存失败,A 仍然会有数据。不是很大的劣势吗?
不过,人们仍在使用 MongoDB 而不是 RDBMS。为什么?
【问题讨论】:
-
除了过于宽泛和主观之外,默认答案:因为我们想要并且它适合我们的场景?还要考虑一下:在一个非金钱/资源交易应用程序(如 90% 的应用程序)中,有多少行真正相互依赖?相反,您可以为此实现称为最终一致性的东西,从而使其按需分段。当然,这也更快、更容易扩展
-
@Sammaye 说得对。这一切都与您的用例有关。 NoSQL 更多地用于存储增长巨大的原始数据并从中获得商业价值。来到事务支持它不支持它。你可能会喜欢这个,不确定它是否已经上市使用tokutek.com/2013/04/…