0

나는 블로그 항목에 대한 검색 모델을 사용하려고하며 개발 플랫폼에서 잘 작동하지만 클라우드에 항목을 추가하려고하면 오류 얻을 :Appengine 검색의 크기 항목 크기 제한을 극복 하시겠습니까?

Traceback (most recent call last): 
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/init.py", line 517, in call 
    handler.post(*groups) File 
"/base/data/home/apps/smart-fast/1.348228399174418277/admin.py", line 76, in post 
    article.put() 
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/init.py", line 895, in put 
    return datastore.Put(self._entity, config=config) 
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/datastore.py", line 404, in Put 
    return _GetConnection().async_put(config, entities, extra_hook).get_result() 
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_rpc.py", line 601, in get_result 
    self.check_success() 
File "/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_rpc.py", line 572, in check_success 
    rpc.check_success() 
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 502, in check_success 
    self.__rpc.CheckSuccess() 
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_rpc.py", line 126, in CheckSuccess 
    raise self.exception 
ApplicationError: 

ApplicationError: 1 Too many indexed > properties for entity: app: 
"smart-fast",path < Element { type: "Article", id: 2002 }> This index put 
it over the limit: entity_type: "Article",ancestor: false, 
Property { name: "searchable_text_index", direction: ASCENDING}, 
Property { name: "searchable_text_index", direction: ASCENDING}, 
Property { name: "date", direction: ASCENDING} 

이러한 항목이없는이됩니다 대형 (< 500 단어)는 저 한계입니까? 이 문제를 해결할 수있는 유일한 방법은 항목을 검색 할 수없는 모델로 저장하는 것입니다. 또한 항목 텍스트를 각각의 기본 항목을 참조하는 검색 가능한 작은 모델로 나눕니다. 도움을 주시면 대단히 감사하겠습니다.

+0

할당량 문서에서 제한을 지정하지 않습니다. GAE에 대한 포럼/그룹/메일 링리스트에 질문 해보십시오. –

답변

0

실행중인 것으로 보이는 항목을 분해 색인이라고합니다. 여기에 대한 자세한 내용은 여기를 참조하십시오. http://code.google.com/appengine/docs/python/datastore/queries.html#Big_Entities_and_Exploding_Indexes

아주 작은 데이터 집합이 없다면 기본적으로 AppEngine을 사용하여 전체 텍스트 엔진을 만들 수 없습니다. 폭발하는 색인을 실행하거나 다른 문제 (예 : 병합 참여 제한 시간)에 부딪치게됩니다. 아주 좋은 전체 텍스트 검색 서비스 인 IndexTank라는 서비스를 살펴 보는 것이 좋습니다. 완전한 REST API 및 Python 클라이언트가 있으므로 AppEngine을 쉽게 사용할 수 있습니다.

관련 문제