Google App Engine:修改1000个实体

时间:2014-06-27 15:45:23

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

我有大约1000个这样的用户帐户实体:

class UserAccount(ndb.Model):
    email = ndb.StringProperty()

其中一些电子邮件值包含大写字母,例如 JohnathanDough@email.com 。我想从所有UserAccount实体中选择所有email值并应用python' s email.lower()。我怎样才能有效地做到这一点,最重要的是,没有错误?

注意:电子邮件值对于登录很重要,所以我不能搞清楚这一点。如果我确实犯了错误,有没有办法备份这些数据?

谢谢。

2 个答案:

答案 0 :(得分:1)

是的,当然。即使数据存储管理是一项实验性功能,我们也可以在不编码的情况下备份和恢复数据。请按照以下说明进行备份:Backing up data。 要改为处理数据,最有效的方法是使用MapReduce library

答案 1 :(得分:0)

Mapreduce可以工作,但如果你以前从未这样做,那么这是一个过分的复杂因素 使用任务队列,每个队列都可以处理查询结果页面,存储下一个pageToken并为下一页启动另一个任务队列。
如果你以特定的方式运行任务队列,那么比mapreduce更慢。 1000条目并不多。也许在一分钟内就可以完成。