一. DataDir 參數
<dataDir>/var/data/solr</dataDir>
不用 “Solr home”/data 目錄,可以指定其它別的目錄來存放所有索引數據。如果使用了 replication(主從複製),它可以匹配 replication 配置。如果這個目錄不是絕對的,那會是當前 servlet 容器工作目錄下的相對目錄。
二. mainIndex
這些值用來控制合併多個索引段 <mainIndex>
<!-- lucene options specific to the main on-disk lucene index -->
<useCompoundFile>false</useCompoundFile>
<mergeFactor>10</mergeFactor>
<maxBufferedDocs>1000</maxBufferedDocs>
<maxMergeDocs>2147483647</maxMergeDocs>
<maxFieldLength>10000</maxFieldLength>
</mainIndex>
1. <useCompoundFile>
通過將很多 Lucene 內部文件整合到單一一個文件來減少使用中的文件的數量。
這可有助於減少 Solr 使用的文件句柄數目,代價是降低了性能。
除非是應用程序用完了文件句柄,否則 false 的默認值應該就已經足夠。
2. mergeFactor
決定低水平的 Lucene 段被合併的頻率。較小的值(最小爲 2 )使用的內存較少但導致的索引時間也更慢。
較大的值可使索引時間變快但會犧牲較多的內存。
3. maxBufferedDocs
在合併內存中文檔和創建新段之前,定義所需索引的最小文檔數。
段是用來存儲索引信息的 Lucene 文件。較大的值可使索引時間變快但會犧牲較多的內存。
4. maxMergeDocs
控制可由 Solr 最適合於具有合併的 Document 的最大數。
較小的值 (< 10 大量更新的應用程序。
該參數不允許lucene在任何索引段裏包含比這個值更多的文檔,
但是,多餘的文檔可以創建一個新的索引段進行替換。
5. maxFieldLength:
對於給定的 Document,控制可添加到 Field 的最大條目數,進而截斷該文檔。
如果文檔可能會很大,就需要增加這個數值。然而,若將這個值設置得過高會導致內存不足錯誤。
6. unlockOnStartup
unlockOnStartup 告知 Solr 忽略在多線程環境中用來保護索引的鎖定機制。
在某些情況下,索引可能會由於不正確的關機或其他錯誤而一直處於鎖定,這就妨礙了添加和更新。
將其設置爲 true 可以禁用啓動鎖定,進而允許進行添加和更新。
三 高亮插件配置
<highlighting>
<!-- Configure the standard fragmenter -->
<!-- This could most likely be commented out in the "default" case -->
<fragmenter name="gap" class="org.apache.solr.highlight.GapFragmenter" default="true">
<lst name="defaults">
<int name="hl.fragsize">100</int>
</lst>
</fragmenter>
<!-- A regular-expression-based fragmenter (f.i., for sentence extraction) -->
<fragmenter name="regex" class="org.apache.solr.highlight.RegexFragmenter">
<lst name="defaults">
<!-- slightly smaller fragsizes work better because of slop -->
<int name="hl.fragsize">70</int>
<!-- allow 50% slop on fragment sizes -->
<float name="hl.regex.slop">0.5</float>
<!-- a basic sentence pattern -->
<str name="hl.regex.pattern">[-\w ,/\n\"']{20,200}</str>
</lst>
</fragmenter>
<!-- Configure the standard formatter -->
<formatter name="html" class="org.apache.solr.highlight.HtmlFormatter" default="true">
<lst name="defaults">
<str name="hl.simple.pre"><![CDATA[<em>]]></str>
<str name="hl.simple.post"><![CDATA[</em>]]></str>
</lst>
</formatter>
</highlighting>