我有一个 mongo 集合,其中包含不到 200 万个文档,并且我有一个希望运行的查询,它将根据日期字段删除大约 700.000 个文档。
删除查询如下所示:
db.collection.remove({'timestamp': { $lt: ISODate('XXXXX') }})
在这种情况下,确切的日期并不重要,语法是正确的,我知道它会起作用。但是,我也知道这将需要很长时间(上次我们做类似的事情花了不到 2 个小时)。
还有另一个我无法停止的同时插入和更新记录的过程。但是,只要这些插入/更新“最终”被执行,我不介意它们被推迟。
我的问题是:有没有办法设置特定查询/操作的优先级,使其运行得更快/在之后发送的所有查询之前?在这种情况下,我假设 mongo 必须在数据库中进行大量数据交换,这对性能没有帮助。