【发布时间】:2012-09-10 13:14:18
【问题描述】:
我有一个包含相当大文本字段的架构。
我已经对其进行了 gzip 压缩并启用了延迟加载,但它仍会被获取,除非每个使用 solr 的客户端都明确设置字段列表 (fl) 参数。
如何配置 solr 以在不使用字段列表参数进行查询时从结果中省略大的压缩文本字段?
【问题讨论】:
标签: optimization solr schema
我有一个包含相当大文本字段的架构。
我已经对其进行了 gzip 压缩并启用了延迟加载,但它仍会被获取,除非每个使用 solr 的客户端都明确设置字段列表 (fl) 参数。
如何配置 solr 以在不使用字段列表参数进行查询时从结果中省略大的压缩文本字段?
【问题讨论】:
标签: optimization solr schema
最简单的方法是将字段列表添加到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 和field3。这些将是查询时返回的字段,除非请求指定了 fl 参数,然后发送的任何字段都将返回。
这些默认值可以根据 requestHandler 设置,因此如果您使用不同的 requestHandler,则只需根据需要修改配置即可。
希望这会有所帮助。
【讨论】: