【发布时间】:2015-02-11 06:31:16
【问题描述】:
我正在使用 google app engine 数据存储区,并且在数据存储区中有大约 1500 篇博文。
使用 ndb
class BlogPost(ndb.Model):
title = ndb.StringProperty(required=True)
content = ndb.TextProperty()
created = ndb.DateTimeProperty(auto_now_add=True)
所以我正在使用
words = self.request.get("q")
search_words = words.split()
query = libs.blogs_cache() # returns a list of blogs memcache
search_results = [blog for blog in query for word in search_words
if word.lower() in blog.title.lower()]
这是我暂时使用的一个例子。但不幸的是,这非常慢(大约需要 6 秒),因为您必须遍历每一个数据才能找到结果。如果使用多个词,搜索次数会成倍增加。
所以我的问题是。有哪些方法可以加快搜索和谷歌应用引擎的速度?任何例子和指导将不胜感激。提前致谢。
【问题讨论】: