Solr Facet查询结果缓存


Solr Facet Query result caching

我有一个使用Nutch和Solr运行的医疗术语搜索引擎,它使用PHP前端。与搜索结果一起,它将显示数千个预定义术语的标记计数,通过将所有术语通过solr facet查询传递给solr来检索标记结果。

如何在solr中添加所有这些术语,而不是每次通过查询,然后得到,然后得到搜索结果中每个术语的facet计数。我对检索facet计数的部分查询如下:

fl =内容,url&方面= true& facet.field = host& facet.zeros = false& facet.query =内容:Pfizer& facet.query =内容:Teva& facet.query =内容:Genentech& facet.query =内容:Abbot& facet.query =内容:Constipation& facet.query =内容:Constipate& facet.query =内容:Constipated& facet.query =内容:Constipates& facet.query =内容:Constipation& facet.query =内容:Diarrhea& facet.query =内容:Depression& facet.query =内容:Depressions& facet.query=内容:Depressed& facet.query =内容:Sad& facet.query =内容:Cramps& facet.query =内容:Cough& facet.query =内容:Xyrem& facet.query =内容:Abilify& facet.query =内容:Metformin&方面。查询=内容:阿瓦斯丁'

提前感谢。

这里最多可以做的是将您的查询简化为以下内容:

...
facet.query = content: [OR Pfizer Teva Genentech Abbot ... Avastin]
...

或者,您可以使用"facet "。Method =enum",其中将根据字段返回所有值的facet。

我在Solr中找不到其他方法,您可以使用键或标记将"查询变量"本身保存在缓存中。尽管如此,Solr有称为"标签","ex"answers"key"的LocalParams,但它们不符合您所追求的要求。

引用:

  1. http://solr.pl/en/2010/12/06/faceting-eliminowanie-filtrow-i-jak-z-tego-skorzystac/
  2. http://wiki.apache.org/solr/SimpleFacetParameters
  3. http://wiki.apache.org/solr/SolrFacetingOverview