solrconfig.xml 之 enableLazyFieldLoading

如果这个参数设置为 true,不是直接请求的字段将会被延迟加载。这个可以提高性能,在查询只是查小数据量字段时,那些大内容字段将会延迟加载。
<enableLazyFieldLoading>true</enableLazyFieldLoading>

solrconfig.xml 之 useColdSearcher

这个设置用于控制需要启用一个新的 searcher 时,是否立即使用还是得到该 searcher 装载完缓存,为 true 时,表示立即使用,为 false 时,表示等待缓存加载。
<useColdSearcher>false</useColdSearcher>

solrconfig.xml 之 maxWarmingSearchers

该参数用于设置最大的 searcher 数量,这些 searcher 实现预热好的,随时可以调用。如果超过这个数量,将会报错。在一个只读的索引库中,2个预热的 searcher 是相对合理的,如果是读写的索引库中,根据内存和cpu的大小可以给一个相对大一点的值。

<maxWarmingSearchers>2</maxWarmingSearchers>

solrconfig.xml 之 maxBooleanClauses

设置boolean 查询中,最大条件数。在范围搜索或者前缀搜索时,会产生大量的 boolean 条件,如果条件数达到这个数值时,将抛出异常,限制这个条件数,可以防止条件过多查询等待时间过长。

<maxBooleanClauses>1024</maxBooleanClauses>

solrconfig.xml 之 autoCommit

这个设置用于控制什么时候将更新的数据写入索引,该设置由以下两个子参数

maxDocs
当索引的文档达到这个数量时,就自动更新到索引中
maxTime
单位为毫秒,当离上一次 commit 超过这个时间后,将自动最近更新的文档写入索引中
只要达到上面任一条件,solr 都将自动最近更新的文档写入索引中,如果没有指明 autoCommit 这个参数,只能通过显示调用 commit 才能将最近更新的文档写入索引中。
设置这个参数时,就需要最性能和准确度之间做个权衡,频繁提交,可以提高数据准确性,但是对性能有一定的损耗。
<autoCommit>
	<maxDocs>10000</maxDocs>
	<maxTime>1000</maxTime>
</autoCommit>

solrconfig.xml 之 updateHandler

用指定索引更新的处理类。

<updateHandler class="solr.DirectUpdateHandler2"></updateHandler>

solrconfig.xml 之 其他索引设置

以下是另外一些比较重要的索引的设置:
maxBufferedDocs:
设置索引刷新到磁盘前,缓存在内存中文档的数量。Solr 默认情况下没有设置该值
ramBufferSizeMB:
单位为 M,设置索引刷新到磁盘前,缓存在内存时使用的最大内存。该参数和 maxBufferedDocs 同时设置,只要达到其中的一个限制时,都将缓存写入磁盘
maxMergeDocs:
该值用于设置单个片段最大的文档数量。达到这个值时,当前片段将被关闭,然后创建一个新的片段。
maxFieldLength:
字段内容经分词后会产生许多的 tokens,当这些 tokens 达到该值的设置后,其他的 其他的 tokens 会被忽略。
<maxBufferedDocs>1000</maxBufferedDocs>
<ramBufferSizeMB>32</ramBufferSizeMB>
<maxMergeDocs>2147483647</maxMergeDocs>
<maxFieldLength>10000</maxFieldLength>

solrconfig.xml 之 UseCompoundFile

设置 UseCompoundFile 为 true 时,solr 会将数据索引到一个索引文件中。有的操作系统有限制一个线程打开文件的数量,设置这个值为 true 时,可以避免达到这个文件数量限制。
这个设置也将影响索引复制时需要传输的数据量。
solr 示例中,该设置的值为 false,在 lucene 1.4 版本以后,代码中默认该设置的值为 true。

solrconfig.xml 之 dataDir

该参数用于用户自定义 solr 索引数据存放的位置,默认情况下,索引文件存在在 SOLR_HOME 下的 data 文件夹中。该参数可以是一个绝对路径或者是相对于当前 servlet 容器的相对位置。如下所示:

<dataDir>/var/data/solr/</dataDir>

solrconfig.xml

solrconfig.xml 是 solr 的主配置文件,里头配置的参数影响着 solr 的工作,在这个文件里可以配置以下部分内容:

  • 请求处理类
  • 监听器(监听器可以触发一些特殊的代码,比如预热查询缓存)
  • HTTP 通讯的请求调度
  • 分布式过程中的索引复制
该文件存在 solr/conf 目录下

Copyright © All Rights Reserved · Green Hope Theme by Sivan & schiy · Proudly powered by WordPress