Google应用引擎NDB查询和超内存

2024-09-27 00:12:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个叫做“Obj”的Google应用引擎数据存储,它有将近50万个实体在生产中。我尝试只查询50个Obj实体,但是即使我将limit参数设置为50,查询最终还是会抛出错误“Exceeded soft private memory limit”。在

这和使用ndb.GenericProperty公司在查询中?属性“垃圾日期”是日期时间类型,通常不是Obj的属性。我还手动为状态和垃圾日期创建了正确的索引。“垃圾日期”应该永远是这个模型的属性吗?在

下面是我正在使用的代码,当我只查询50个实体时,我能做什么呢?它不超过内存限制?在

q = Obj.query(
    Obj.status == 1,
    ndb.GenericProperty('trashed_date') < expire_date
)
results = q.fetch(50)

Tags: 数据引擎实体objdate属性错误google
1条回答
网友
1楼 · 发布于 2024-09-27 00:12:42

请尝试使用q.iter()和计数器将其限制为50。我在fetch()中遇到了类似的问题,并使用iter()修复了它。盖伊非常强烈地建议现在不要拿。基督教青年会。好吧。-史蒂夫普

相关问题 更多 >

    热门问题