租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

mongodb为啥不支持事务

发布时间:2023-09-05 08:06:50

mongodb为啥不支持事务

MongoDB不支持事务的主要缘由是为了寻求高性能和可伸缩性。事务需要锁定数据,并保证数据的一致性,这会限制并发性能和增加系统的复杂性。
MongoDB的设计目标是提供高性能和可伸缩性的数据库解决方案,在大范围的读写操作下能够提供稳定的性能。为了实现这个目标,MongoDB采取了散布式数据库架构和基于副本集的数据复制方式,以提高系统的可用性和数据的持久性。
在这样的架构下,如果支持事务,就需要引入散布式锁和调和机制,来保证事务的一致性和隔离性。这会给系统带来额外的开消和复杂性,并且下降系统的性能和可伸缩性。因此,MongoDB选择不支持事务,而将重点放在提供高性能和可伸缩性的数据访问方式上。
但是,MongoDB提供了一些替换的方案来处理复杂的操作,例如使用批量写操作(Bulk Write)来保证多个文档的原子性,还是使用散布式事务管理器(如TokuMX或Percona Server for MongoDB)来实现散布式事务。这些方案可以根据具体的利用需求来选择和利用。