我有一个包含1,200万个文档的集合,我需要在python中处理它。为了加快我的进程,我正在使用多处理。每个流程都应该分析一部分文档。要做到这一点,我使用查找并按“_id”排序。我第一次限制搜索。例如:
Sub NewSheet()
Dim origSht As Worksheet
Dim destSht As Worksheet
On Error GoTo eHandle
Set origSht = ActiveSheet
Sheets.Add.Name = InputBox("What Would You Like to Call the New Sheet?")
Set destSht = ActiveSheet
origSht.Cells.Copy Destination:=destSht.Cells
Exit Sub
eHandle:
MsgBox "You must name the new sheet"
set origSht = nothing
set destSht = nothing
End Sub
然后从这个查询中我得到了在下面的搜索中使用的最后一个_id:
db.Mycollection.find().sort({"_id":1}).limit(1000)
直到这里,一切正常,但是在该过程已经阅读了大约800000个文档之后,它不再返回任何文档。我获得了last_id并在mongodb控制台中执行了搜索并且它没有返回任何其他项目,但是还有超过1100万个文档我尚未分析。为什么会这样?