MongoDB中写操作的原子性是啥意思?

Posted

技术标签:

【中文标题】MongoDB中写操作的原子性是啥意思?【英文标题】:What is meant by atomicity of write operations in MongoDB?MongoDB中写操作的原子性是什么意思? 【发布时间】:2017-11-19 11:56:29 【问题描述】:

在 MongoDB 文档中,它声明写操作在文档级别是原子的。这是什么意思?

https://docs.mongodb.com/manual/core/data-modeling-introduction/

【问题讨论】:

en.wikipedia.org/wiki/Atomicity_(database_systems) 【参考方案1】:

这意味着您不能进行跨越多个文档的原子操作。

例如汇款。您从一个钱包中扣除资金,然后添加到另一个。您不能在 mongodb 中以原子方式执行此操作。

如果您不知道“原子”是什么意思,那就是“操作要么整体成功,要么整体失败。不能只有部分成功而其他部分失败”。

【讨论】:

那么Transaction 是什么? @Er.AmitJoshi:在回答时不存在事务(提供跨多个文档的更新原子性)。 @SergioTulentsev 请查看编辑队列并接受或拒绝它们,它已满,我们无法在您的答案中添加更多信息。 @KasirBarati:我没有看到此答案的待编辑。

以上是关于MongoDB中写操作的原子性是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

什么是程序的原子性

JAVA的原子性和可见性,线程同步的理解

为什么volatile能保证有序性不能保证原子性

为什么volatile能保证有序性不能保证原子性

Java并发编程原子性与易变性

解密并发幕后黑手:线程切换引发的原子性问题