在appengine上使用Search API进行部分短语搜索?

时间:2014-06-25 18:47:48

标签: google-app-engine full-text-search google-search-api

我们目前正在将文档存储在Search API的索引中

文档的TextField包含一个短语。

我们想用短语查询文档索引,并能够返回部分短语匹配。

例如,让我们使用以下短语索引三个文档:

“搜索词组” “搜索所有短语” “一些随机字符串”

我们希望使用查询“搜索所有短语”查询索引并返回包含字段值“搜索所有短语” 的文档作为“搜索词组”第二个只是部分词组匹配,但我们希望在结果中得到这个。

如果将查询短语称为“搜索或所有OR短语”,但是此查询的问题在于它不会根据常用单词的数量对匹配进行排名

因此,上述查询实际上可能会将“搜索短语”作为顶级文档返回,尽管它们是另一个匹配的文档,其中所有单词实际上都与查询短语单词匹配。

我们如何做到这一点?

由于

更新:

我们也以这种方式尝试了扩展查询:“(搜索所有短语)或(搜索短语)

这确实会返回结果,但排序顺序并不直观。人们会期望完全匹配,即所有查询单词匹配的文档位于顶部。不幸的是,事实并非如此。

我们如何对此进行排序,以使具有匹配查询字词的文档完全显示在顶部。我们可以按照常用片段的长度或类似的东西进行排序吗?

0 个答案:

没有答案