我有一个关于 mongo 锁的问题。基本上我必须对表执行一些写操作(插入/删除/更新)。当我阅读此链接时 Locking in Mongodb .它说“锁是‘写入者贪婪的’,当写锁存在时,单个写操作独占地持有锁,没有其他读或写操作可以共享锁。
我的问题是——锁是基于内存块的,或者我们对整个数据库只有一个锁。我的想法是同时运行 2 个脚本扫描 mongodb 的 2 个内存块(计划在一个查询中扫描 200 万个文档)并并排执行写入操作,从而提高性能并节省时间。
我在网上搜索了这方面的内容,但没有找到令人满意的内容。
任何帮助将不胜感激
最佳答案
写锁与内存无关,MongoDB不是内存数据库,操作系统只是将mongod
进程的工作集缓存到内存中。 MongoDB 在其程序中没有内存 Hook 。
写锁也是数据库级别的,这样你的方案是不可行的。
关于mongodb - mongodb写锁行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18614668/