2014-05-12 197 views
0

我有一個使用Nutch和Solr運行的醫療術語搜索引擎,它使用PHP前端。除搜索結果外,它還會顯示數千個預定義術語的標記計數,通過將所有術語通過solr facet查詢傳遞給solr來檢索標記結果。Solr Facet查詢結果緩存

如何在solr中添加所有這些術語而不必每次都通過查詢傳遞這些術語,然後獲取搜索結果中每個術語的方面數。我的查詢檢索方面計數的一部分下面給出:

FL =內容,URL &面=真& facet.field =主機& facet.zeros =假& facet.query =內容:輝瑞& facet.query =內容:Teva公司& facet.query =含量:基因泰克& facet.query =含量:阿伯特& facet.query =含量:以便祕& facet.query =含量:患便祕& facet.query =含量:便祕& facet.query =內容:便祕& facet.query = content:便祕& facet.query = content:腹瀉& facet.query =含量:抑鬱症& facet.query =含量:凹陷& facet.query =含量:沮喪& facet.query =含量:哀傷& facet.query =含量:抽筋& facet.query =含量:咳嗽&面.query =含量:Xyrem & facet.query =含量:阿立& facet.query =含量:二甲雙胍& facet.query =含量:阿瓦斯丁

預先感謝。

回答

0

這裏可以做的最多的事情是將您的查詢降低到以下。

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

或者,你可以使用「facet.method =枚舉」,其中基於現場,將返回所有值方面。

我在Solr中找不到其他方式,您可以使用密鑰或標記將「查詢變量」本身保存在緩存中。儘管如此,Solr的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