MongoDB锁定插入操作

Dan*_*an 0 locking insert mongodb

在将新行插入MongoDB集合时,是否仍可以查询旧记录?

在这方面,WiredTiger和MMAPv1有什么区别吗?

ash*_*ahu 5

WiredTiger

WiredTiger使用文档级锁定.WiredTiger是3.0版mongodb的默认存储引擎

MMAPv1

MMAPv1使用3.0版本的集合级别锁定,这是一项巨大的改进,因为之前它使用的是数据库级锁定.此外,MMAPv1是3.0版之前mongodb的默认存储引擎.

现在回答你的问题

由于WiredTiger提供文档级锁定,而WiredTiger是3.0的默认存储引擎,因此您可以在Mongodb 3.0及更高版本中查询集合中的旧记录.但是由于Mongodb在3.0版之前使用MMAPv1作为默认存储引擎,因此在早期版本中,您将无法在集合中搜索旧记录.

有关更多信息,请参阅以下链接: - https://docs.mongodb.org/manual/faq/concurrency/