似乎 - 至少现在 - 我必须手动保持搜索索引与数据存储区同步。如果每次在数据存储区中更改某些内容时重建索引,我都会假设我会遇到配额问题,因此我认为创建一个cron作业以定期重建索引会更好。我应该多久重建一次索引以避免遇到配额问题?
答案 0 :(得分:4)
使用ndb
为您设置Model Hooks后使用_post_put_hook
将实体编入索引的模型。
例如:
class MyModel(ndb.Model):
title = ndb.StringProperty()
def _post_put_hook(self, future):
fields = [search.TextField(name='title', value=self.title)]
doc = search.Document(doc_id=self.key.id(), fields=fields)
search.Index('index-name').put(doc)
...
https://developers.google.com/appengine/docs/python/ndb/modelclass#Model__post_put_hook