2012-09-18 45 views
1

我有一個架構,其中包含一個相當大的文本字段。如何在我的solr模式中設置默認字段列表?

我已經gzip它並啓用延遲加載,但它仍然會被提取,除非每個客戶端使用solr明確設置字段列表(fl)參數。

在沒有字段列表參數的情況下查詢時,如何配置solr以忽略結果中的大gzip文本字段?

回答

2

最簡單的方法是將字段列表添加到requestHandler。假設您使用默認的/select請求處理程序,則需要修改solrconfig.xml,並將fl選項添加到/select requestHandler的默認列表中。見下面的例子。

<requestHandler name="/select" class="solr.SearchHandler"> 
    <!-- default values for query parameters can be specified, these 
      will be overridden by parameters in the request 
    --> 
    <lst name="defaults"> 
    <str name="echoParams">explicit</str> 
    <int name="rows">10</int> 
    <str name="fl">field1,field2,field3</str> 
    </lst> 

    .... 

</requestHandler> 

因此,在這個例子中,我設置fl參數,以便查詢將默認返回FIELD1,FIELD2和字段3。這些將是查詢時返回的字段,除非請求指定了fl參數,然後將返回所有發送的字段。

這些默認值可以設置爲每個requestHandler,所以如果您使用的是不同的requestHandler,那麼只需根據需要修改您的配置即可。

希望這會有所幫助。

+0

感謝您的迴應。出於某種原因,我認爲solrconfig.xml和schema.xml之間沒有1:1映射。這將工作完美,謝謝! – Erik

相關問題