您可以在 PyMongo 中更新的文档数量是不是有上限?
Posted
技术标签:
【中文标题】您可以在 PyMongo 中更新的文档数量是不是有上限?【英文标题】:Is there an upper limit on the number of documents you can update in PyMongo?您可以在 PyMongo 中更新的文档数量是否有上限? 【发布时间】:2018-07-03 13:38:55 【问题描述】:我正在使用一些看起来像这样的 PyMongo 代码更新 mongo 集合中的约 600,000 个文档
bulk = coll.initialize_ordered_bulk_op()
for index, row in df.iterrows():
bulk.find( '_id': ObjectId(row['id']) ).update( '$set': "X":
row['X'].split(',') )
bulk.execute()
在further investigating 之后,我认为这对于超过 100,000 个文档可能会失败,并且我将不得不执行类似于here 建议的操作。
但是它适用于所有文档。我只是想知道我误解了什么。
提前致谢。
【问题讨论】:
【参考方案1】:如文档here 中所述:
每组操作最多可以有 1000 个操作。如果一个组超过了这个限制,MongoDB 会将该组分成 1000 人或更少的更小的组。例如,如果批量操作列表包含 2000 个插入操作,则 MongoDB 会创建 2 个组,每个组有 1000 个操作。
所以主要是你实际上并没有在一段时间内实际执行 600000 操作,但 mongoDB 正在负责拆分这些操作......
【讨论】:
以上是关于您可以在 PyMongo 中更新的文档数量是不是有上限?的主要内容,如果未能解决你的问题,请参考以下文章