我不确定这是否可行,但想知道我们是否有解决此问题的方法。 我定义了一个 map_reduce 作业(已采取额外措施进行增量查询,以便数据集最小化)如果需要很长时间我想使用 pymongo API 或在 mongoDB shell 中终止作业……并且也优雅地删除所有临时表。这能做到吗?
最佳答案
在终止操作方面,您需要的是 currentOp()
找到操作 ID,然后使用 killOp()
命令终止操作壳。详情请看这里:
一旦操作被终止,就可以安全地删除临时集合,只需在集合列表上调用 drop()
即可。我可以将一些 javascript 放在一起在 shell 中自动完成,但考虑到可能出错和丢弃错误的集合,这可能不是一个好主意。
关于mongoDB 如何杀死/终止 map_reduce 作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12171586/