solrconfig.xml配置文件

solrconfig.xml文件用于对服务器的系统参数进行配置,下面列出常用的配置参数。

l <dataDir>

用于替换默认的索引数据目录(./data)。如果不是绝对路径,将使用servlet容器当前工作目录下的相对路径。

l <mainIndex>

这里指定的参数将影响IndexWriter对索引的管理。表3-11展示了<mainIndex>元素的配置方法。

表3-11 <mainIndex>元素的配置

<mainIndex>

<useCompoundFile>false</useCompoundFile>

<mergeFactor>10</mergeFactor>

<maxBufferedDocs>1000</maxBufferedDocs>

<maxMergeDocs>2147483647</maxMergeDocs>

<maxFieldLength>10000</maxFieldLength>

<unlockOnStartup>false</unlockOnStartup>

</mainIndex>

表3-11中<useCompoundFile>子元素指明是否提供索引文件合并功能,如果该元素的值为true,Solr会在索引文件较多时,通过将多个索引文件进行合并来减少索引文件的数量。<mergeFactor>指明索引文件合并的频率,例如在表3-11中,最低级的索引文件数量达到10时会合并为1个索引文件,当这样合成索引文件数目达到10个时,又会合并为更高级的索引文件。<maxBufferedDocs>元素指定缓存的文档数目达到多少时会自动建立硬盘索引文件。<maxMergeDocs>指明合并后的索引文件可以容纳的文档的数目,当某个索引文件的数目超过这一值后,将不能再合并。<unlockOnStartup>false</unlockOnStartup>用于指定是否在启动时自动解除索引文件的锁。<maxFieldLength>指明字段所允许的最大长度。

l <updateHandler>

该元素用于对更新处理器进行配置,更新处理器是用于更新索引数据的类。更新处理器的常用配置参数见表3-12。

表3-12 更新处理器的配置

<updateHandler class="solr.DirectUpdateHandler2">

<autoCommit>

<maxDocs>10000</maxDocs>

<maxTime>1000</maxTime>

</autoCommit>

<listener event="postCommit" class="solr.RunExecutableListener">

<str name="exe">snapshooter</str>

<str name="dir">solr/bin</str>

<bool name="wait">true</bool>

<arr name="args"> <str>arg1</str> <str>arg2</str> </arr>

<arr name="env"> <str>MYVAR=val1</str> </arr>

</listener>

</updateHandler>

表3-12中<updateHandler>元素的class属性指明使用哪个类进行索引更新操作。子元素<autoCommit>指明在何时对索引数据进行提交(也就是将内存中的索引写到硬盘),表3-12中指明在内存中缓存的文档数目达到10000或时间达到1000时进行提交。<listener>配置一个“监听器”,这个“监听器”在特定的事件发生时将被触发。

l <query>

该元素是配置一些查询相关参数,以提高查询的性能。一些常用的配置参数在表3-13中予以显示。<maxBooleanClauses>元素指明了布尔查询所允许的子句的数目。<queryResultCache>、<documentCache>和<filterCache>是对三种缓存的配置。<queryResultWindowSize>设置查询结果窗口大小,即返回多少个查询结果。<maxWarmingSearchers>指明可以同时“预热”多少个搜索器。关于搜索器是否允许预热的配置是通过对<useColdSearcher>元素的设置来实现的。与更新处理器中一样,查询过程也可以配置一些“监听器”用于特定事件的处理。

表3-13查询参数的配置

<query>

<maxBooleanClauses>1024</maxBooleanClauses>

<filterCache class="solr.LRUCache" size="512" initialSize="512" autowarmCount="256"/>

<queryResultCache class="solr.LRUCache" size="512" initialSize="512" autowarmCount="256"/>

<documentCache class="solr.LRUCache" size="512" initialSize="512" autowarmCount="0"/>

<enableLazyFieldLoading>true</enableLazyFieldLoading>

<queryResultWindowSize>10</queryResultWindowSize>

<HashDocSet maxSize="3000" loadFactor="0.75"/>

<boolTofilterOptimizer enabled="true" cacheSize="32" threshold=".05"/>

<listener event="newSearcher" class="solr.QuerySenderListener">

<arr name="queries">

<lst> <str name="q">solr</str> <str name="start">0</str> <str name="rows">10</str> </lst>

<lst> <str name="q">rocks</str> <str name="start">0</str> <str name="rows">10</str> </lst>

</arr>

</listener>

<useColdSearcher>false</useColdSearcher>

<maxWarmingSearchers>4</maxWarmingSearchers>

</query>

l <requestDispatcher>

这里配置可以被HTTP的requestDispatcher使用的一些参数。

l <requestHandler>

可以定义多个请求处理器,这些处理器可以在查询和索引数据更新的时候使用。

l <queryResponseWriter>

可以定义多个结果处理器,这些结果处理器会以不同的方式返回结果,通常两种返回结果的方式XML和XSLT。


了解更多详情请登录超人学院网站http://www.crxy.cn?sxy或者关注超人学院微信号:CRXY-CN

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇