"按文档一致"在App Engine搜索中

时间:2013-02-05 06:51:03

标签: google-app-engine

只需阅读搜索api文档并遇到一个堆栈溢出问题,其答案提到默认的"每个文档的一致性"索引(Appengine Search API - Globally Consistent)。

我无法在App API的App Engine文档中找到任何关于此术语的提及,并且想知道这意味着什么(或指向正确的方向)。

1 个答案:

答案 0 :(得分:2)

在1.7.3版本中弃用了全局一致的索引(请参阅:https://code.google.com/p/googleappengine/wiki/SdkReleaseNotes#Version_1.7.3_-_October_23,_2012

一致性模式之间的区别在源代码中解释:https://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/api/search/search.py?r=281#2334

具体做法是:

  

索引支持的一致性模式。在创建索引时     可以请求索引是GLOBALLY_CONSISTENT还是     PER_DOCUMENT_CONSISTENT。设置了GLOBALLY_CONSISTENT模式的索引,何时     搜索,返回搜索请求之前所有更改的结果,     committted。对于设置了PER_DOCUMENT_CONSISTENT模式的索引,搜索     结果可能包含一些过时的文件。但是,任何两个变化     存储在此类索引中的任何文档都以正确的顺序应用。     PER_DOCUMENT_CONSISTENT的好处是它提供了更高的价格     索引文档吞吐量比全局一致。

     

通常,如果组织个人,您将使用GLOBALLY_CONSISTENT   用户信息,以反映用户在任何已知的所有更改   搜索结果。应在索引中使用PER_DOCUMENT_CONSISTENT   合并来自多个来源的信息,其中没有单一的   用户知道所有收集的数据。