Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么Mongo没有酸?_Java_Mongodb_Acid_Nosql - Fatal编程技术网

Java 为什么Mongo没有酸?

Java 为什么Mongo没有酸?,java,mongodb,acid,nosql,Java,Mongodb,Acid,Nosql,我是MongoDB的初学者,但上周在网上读了很多东西。我得到的是MongoDB不遵循ACID原则 在真正意义上,或者我们可以说MongoDB在文档级别符合ACID 现在我的问题是为什么MongoDB不遵循这个原则 跨文档/集合(如关系数据库)的acid属性。我的意思是,它是故意不遵循它们,还是存在一些技术限制。如果是故意的 那么,为什么和什么额外的MonngoDb以牺牲酸为代价 原子性:-为什么Mongo可以跨文档维护原子性。如果这是故意的牺牲,那么MongoDB在这里牺牲原子性会获得什么额外的

我是MongoDB的初学者,但上周在网上读了很多东西。我得到的是MongoDB不遵循ACID原则 在真正意义上,或者我们可以说MongoDB在文档级别符合ACID

现在我的问题是为什么MongoDB不遵循这个原则 跨文档/集合(如关系数据库)的acid属性。我的意思是,它是故意不遵循它们,还是存在一些技术限制。如果是故意的 那么,为什么和什么额外的MonngoDb以牺牲酸为代价

原子性:-为什么Mongo可以跨文档维护原子性。如果这是故意的牺牲,那么MongoDB在这里牺牲原子性会获得什么额外的成就

一致性:-我不太在意,因为我也可以在应用程序层轻松实现

隔离:-Mongo隔离模型类似于关系数据库的自动提交事务。它在内部意味着like事务可以包含 一个DML语句将自动提交。为什么它不能在一个事务中支持多个语句,这些语句在一次执行中提交,然后获取 其他交易可见

持久:-在关系数据库中,如果触发了提交,不幸的是系统崩溃。甲骨文可以恢复,一旦它回来了,但为什么Mongo不能,因为我相信 这两种方法都实现了预写日志。

这可能有助于您理解