私はGoogle App Engine Search API(https://developers.google.com/appengine/docs/python/search/)を使用しています。私はすべてのエンティティを索引付けしており、検索は正常に動作しています。私は正確に一致するものを検索する場合のみ、0の結果を返します。例:Google App Engine(python):検索API:文字列検索
from google.appengine.api import search
_INDEX_NAME = 'searchall'
query_string ="United Kingdom"
query = search.Query(query_string=query_string)
index = search.Index(name=_INDEX_NAME)
print index.search(query)
私は次のスクリプトを実行した場合、私は次のような結果を得るか:
search.SearchResults(results='[search.ScoredDocument(doc_id='c475fd24-34ba-42bd-a3b5-d9a48d880012', fields='[search.TextField(name='name', value='United Kingdom')]', language='en', order_id='45395666'), search.ScoredDocument(doc_id='5fa757d1-05bf-4012-93ff-79dd4b77a878', fields='[search.TextField(name='name', value='United Kingdom')]', language='en', order_id='45395201')]', number_found='2')
をしかし、私は、"United Kin"
または"United"
にquery_string
を変更した場合、以下のように、それは0の結果を返します。
search.SearchResults(number_found='0')
通常の検索とAutoSuggestの両方にこのAPIを使用します。これを達成する最良の方法は何でしょうか?
お返事ありがとうございますが、データストア内の各エンティティについてデータストアのサイズに影響しないようにすると、大きなデータストアが静かになりますか?私は4種類の検索可能なモデルのようなものを持っていて、それぞれ平均10万件以上のレコードを持っています。 – Amyth
はい、これらの自動生成キーワードを残りのデータと一緒に保存する必要があります。 –