JUA*_*ned 4 python bulk mongodb pymongo bulk-delete
我需要使用 pymongo 对 mongodb 进行批量删除。我通过查询获取了需要删除的文档的 _id 字段,但我无法弄清楚如何使用 _id 来删除 10,000 个块。
以下是使用当前PyMongo v3.7.2的无序批量写入操作的示例:
from pymongo import DeleteOne
from pymongo.errors import BulkWriteError
requests = [
DeleteOne({'_id': 101}),
DeleteOne({'_id': 102})]
try:
db.collection.bulk_write(requests, ordered=False)
except BulkWriteError as bwe:
pprint(bwe.details)
Run Code Online (Sandbox Code Playgroud)
上面的示例使用的是unordered操作,因为无序的批量操作被批量处理并以任意顺序发送到服务器,它们可以并行执行。尝试所有操作后,将报告发生的任何错误。另请参阅PyMongo 批量写入操作和MongoDB 批量写入操作以获取更多信息。