【发布时间】:2015-08-22 13:30:07
【问题描述】:
当我在 MongoDB 3 中发出一个有序的批量操作时,是否将批量操作作为一个整体写入 oplog,以便在服务器崩溃后作为一个整体进行重播?
这个问题的基本原理如下:
我知道没有真正的事务,但我可以使用$isolated 关键字来获得一些读取一致性(在某些情况下)。
除了是否是良好的模式设计之外,让我们假设我必须一次更新可能不同集合中的多个文档,这将是 SQL 中的一个事务。我不关心数据在任何时候都处于不一致的状态,但是我确实要求数据最终是一致的。因此,虽然我可能不关心操作期间的错误和丢失的回滚,但我需要在某个时间点完全执行更新序列或根本不执行为了让它们在批量操作过程中遇到意外的服务器故障或关闭(例如,因为随机的 CoreOS 更新)。
【问题讨论】:
标签: mongodb mongodb-query