Я обнаружил, что сегменты Lucene в бэкэнде не сливаются, и количество сегментов значительно увеличивается. Я изменил политику слияния с LogByteSizeMergePolicy
на TieredMergePolicy
Я попытался изменить свойства в соответствии с документацией solr
, но все равно у меня высокие сегменты.
Я использую Solr 6.1.X. Данные индекса хранятся в HDFS.
Моя конфигурация индекса solrconfig.xml:
<indexConfig>
<writeLockTimeout>1000</writeLockTimeout>
<commitLockTimeout>10000</commitLockTimeout>
<maxIndexingThreads>15</maxIndexingThreads>
<useCompoundFile>false</useCompoundFile>
<ramBufferSizeMB>1024</ramBufferSizeMB>
<mergePolicy class="org.apache.lucene.index.TieredMergePolicy">
<int name="maxMergeAtOnce">10</int>
<int name="segmentsPerTier">1</int>
</mergePolicy>
<mergePolicyFactory class="org.apache.solr.index.TieredMergePolicyFactory">
<int name="maxMergeAtOnce">10</int>
<int name="segmentsPerTier">10</int>
</mergePolicyFactory>
<lockType>hdfs</lockType>
<deletionPolicy class="solr.SolrDeletionPolicy">
<str name="maxCommitsToKeep">1</str>
<str name="maxOptimizedCommitsToKeep">0</str>
</deletionPolicy>
</indexConfig>
The only way we optimize is by force merging which is IO costly and also takes hours to complete.
У меня есть кластер из трех осколков и коэффициент репликации 2.
Может ли кто-нибудь помочь мне, где я ошибаюсь