我在独立的Box(Linux VM)上使用solr 5.1。
我的情况是: - 我每天使用solrnet索引大约1000万份文档,而1000天的文档在一天内传播,剩下900多万份文档在特定时间完成,大约需要4-5小时来编制索引。 / p>
每个文档大小约为6KB,VM的物理内存为110GB。 Solr JVM配置为30GB
合并因素仍然是5.1的有效设置我读了一些它现在已经过时的地方吗? 我应该使用MMapfactory,因为它现在是NRTCachingDirectoryFactory?
我面临的所有这些设置的问题是
a) Time outs some times(Get and Post)
b) Deleted docs not getting removed
以下是一些用于缩短查询时间和索引时间的solrconfig设置
<ramBufferSizeMB>2048</ramBufferSizeMB>
<maxBufferedDocs>2048</maxBufferedDocs>
<mergeFactor>20</mergeFactor>
<autoCommit>
<maxTime>${solr.autoCommit.maxTime:15000}</maxTime>
<openSearcher>false</openSearcher>
</autoCommit>
<autoSoftCommit>
<maxTime>${solr.autoSoftCommit.maxTime:1800000}</maxTime>
<maxDocs>${solr.autoSoftCommit.maxDocs:500000}</maxDocs>
</autoSoftCommit>
<directoryFactory name="DirectoryFactory"
class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}">
<queryResultWindowSize>50</queryResultWindowSize>
<!-- Maximum number of documents to cache for any entry in the
queryResultCache.
-->
<queryResultMaxDocsCached>50</queryResultMaxDocsCached>
<filterCache class="solr.FastLRUCache" size="512" initialSize="512"
autowarmCount="0"/>
<queryResultCache class="solr.LRUCache" size="2048"
initialSize="512" autowarmCount="0"/>
<documentCache class="solr.LRUCache" size="2048" initialSize="512"
autowarmCount="0"/>