【发布时间】:2011-05-28 23:37:42
【问题描述】:
如何避免在内存中汇集数据。在 pymongo 中迭代光标对象时?
例子:
def iter():
c=pymongo.Connection()
cursor=c.db.media.find().skip(0).limit(50000)
for item in cursor:
yield item
在进入循环for 之前,会有大约 2 减的暂停。由于某种原因,它在开始迭代之前将所有数据加载到内存中。我能以某种方式避免它吗?
如果我在 mongodb shell 中执行此操作,一切正常。
【问题讨论】:
-
为什么要将光标(可以自己迭代)包装在生成器函数中?