python - Google App Engine - NDB - 在多条记录上设置属性值

标签 python google-app-engine app-engine-ndb

我在 Google App Engine 上使用 NDB 和 Python。更新具有相同值的多个实体的属性的正确方法是什么? NDB 相当于:

UPDATE notifications SET read = true WHERE user_id = 123

用例是我有这些扇出通知。并且特定用户希望将所有通知设置为已读(可能是 100 秒)。我知道我可以使用 get_async 和 put_async 来获取每个未读通知并将其设置为已读,但我担心通过获取可能的 100 次序列化/反序列化而产生的延迟。

任何建议都得到了极大的应用。

最佳答案

您可以使用 map() 为每个实体调用一个函数查询方法。为了获得最佳性能,请不要忘记 _async

但 GAE 最有用的服务之一是任务队列,尤其是在这种情况下。如果结合 Query Cursorsdeferred library ,您可以轻松处理任意数量的实体。

关于python - Google App Engine - NDB - 在多条记录上设置属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19992694/

相关文章:

python - 读/写 NumPy 结构化数组非常慢,线性大小慢

python - 用 imshow 绘制的时间序列

java - 多语言集成开发环境

python - 我收到 Mail Service.Send 消息,但我的邮件没有送达地址

java - Twitter 基本授权不起作用?

python - 为什么我的应用引擎查询找不到我的实例?

python - 将导入的模块隐藏到解释器

python - 如何模拟_auto_now?

google-app-engine - 谷歌应用引擎 NDB - "Update or Insert (if not exists)"

google-app-engine - Google App Engine NDB 创建 __metadata__ 属性