Python 克服appengine搜索的大小条目大小限制?

Python 克服appengine搜索的大小条目大小限制?,python,google-app-engine,google-cloud-datastore,searchable,Python,Google App Engine,Google Cloud Datastore,Searchable,我尝试使用博客条目的可搜索模型,它在开发平台上运行良好,但当我尝试在云中添加条目时,我得到一个错误: 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-

我尝试使用博客条目的可搜索模型,它在开发平台上运行良好,但当我尝试在云中添加条目时,我得到一个错误:

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}
回溯(最近一次呼叫最后一次):
调用中的文件“/base/python\u runtime/python\u lib/versions/1/google/appengine/ext/webapp/init.py”,第517行
handler.post(*组)文件
“/base/data/home/apps/smart fast/1.348228399174418277/admin.py”,第76行,在post中
第条
文件“/base/python_runtime/python_lib/versions/1/google/appengine/ext/db/init.py”,第895行,输入
返回datastore.Put(self.\u实体,config=config)
文件“/base/python_runtime/python_lib/versions/1/google/appengine/api/datastore.py”,第404行,输入
return\u GetConnection().async\u put(配置、实体、额外的\u钩子)。get\u result()
文件“/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_rpc.py”,第601行,在get_result中
self.check_success()
文件“/base/python_runtime/python_lib/versions/1/google/appengine/datastore/datastore_rpc.py”,第572行,检查成功
rpc.check_success()
文件“/base/python\u runtime/python\u lib/versions/1/google/appengine/api/apiproxy\u stub\u map.py”,第502行,检查是否成功
self.\uurpc.CheckSuccess()
CheckSuccess中的第126行文件“/base/python\u runtime/python\u lib/versions/1/google/appengine/api/apiproxy\u rpc.py”
提出自我例外
应用程序错误:
ApplicationError:1实体:应用程序:的索引>属性太多
“智能快速”,路径此索引放置
超出限制:实体类型:“物品”,祖先:假,
属性{name:“可搜索的_文本_索引”,方向:升序},
属性{name:“可搜索的_文本_索引”,方向:升序},
属性{名称:“日期”,方向:升序}

这些条目没有那么大(您似乎遇到的是所谓的爆炸索引。您可以在此处阅读有关它们的更多信息:


基本上你不能使用AppEngine创建全文引擎,除非你有一个非常小的数据集。要么你会遇到索引爆炸,要么你会遇到其他问题(例如合并连接超时)。我建议您研究一个名为IndexTank的服务,这是一个非常好的全文搜索服务。它有一个完整的REST api和python客户端,因此很容易启动AppEngine。

他们没有在配额文档中指定限制。请尝试在论坛/组/邮件列表中询问GAE。