Python couchdb脚本占用太多内存(被杀死)

Python couchdb脚本占用太多内存(被杀死),python,couchdb,Python,Couchdb,我正在处理一个CouchDB视图,它返回了超过1000万行。有没有一种方法可以在我处理完一行之后遍历这些行来“清理”内存 例如,在django中,可以使用queryset.iterator()防止queryset缓存,这对内存消耗有很大帮助 这基本上就是我正在做的: couch = couchdb.Server(url) couch.resource.credentials = (username, password) db = couch[database_name] result = db.

我正在处理一个CouchDB视图,它返回了超过1000万行。有没有一种方法可以在我处理完一行之后遍历这些行来“清理”内存

例如,在django中,可以使用queryset.iterator()防止queryset缓存,这对内存消耗有很大帮助

这基本上就是我正在做的:

couch = couchdb.Server(url)
couch.resource.credentials = (username, password)
db = couch[database_name]
result = db.view('xxx/xxx', None, stale='update_after', reduce='false')
total = 0
for row in result.rows:
    total += row['value'].num

我的实际代码比这更复杂,所以请不要建议在CouchDB中使用reduce。

您使用的是哪个CouchDB库@BigBlueHat-pycouchdbYou可以使用基于事件的JSON解析器的库,例如or(类似于XML世界中的SAX vs-DOM),或者使用分页选项调用视图(请参阅)。