首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么MongoDB没有事务?(v4.0前)

为什么MongoDB没有事务?(v4.0前)
EN

Stack Overflow用户
提问于 2013-08-04 11:05:55
回答 1查看 4.2K关注 0票数 11

更新: MongoDB支持4.0版本的事务。

原题:

据我所知,MongoDB不支持事务,也没有实现这种支持的计划。原因是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-04 13:06:30

没有事务是允许MongoDB具有可伸缩性的一种权衡。

事务的目的是确保整个数据库在进行多个操作时保持一致。但与大多数关系数据库相反,MongoDB并不是设计为在单个主机上运行的。它被设计成由多个碎片组成的集群,其中每个碎片是多个服务器的副本集(可选地位于不同的地理位置)。

事务可能会影响数据库的许多主机。这意味着事务必须在所有这些主机之间进行同步。这将意味着相当大的开销,如果通过添加更多的服务器来增加数据库的大小,则会非常糟糕。

MongoDB常见问题是这样解释的:

MongoDB不支持传统的带回滚的锁定或复杂事务。MongoDB的目标是轻量级、快速和可预测的性能。这类似于MySQL MyISAM自动提交模型。通过保持事务支持非常简单,MongoDB可以提供更高的性能,特别是对于具有多个数据库服务器进程的分区或复制系统。

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18042255

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档