如何设置/配置solr索引文件的最大大小?

问题描述 投票:1回答:2

如何配置Solr索引文件的最大大小?

solr full-text-search search-engine lucene
2个回答
2
投票

根据讨论 - 在Solr用户邮件列表上的Control Segment Size,遗憾的是,无法控制Solr索引文件(也称为段)的最大大小。

为了使答案包含实际细节,以下是该主题的详细信息:

您想要设置:maxMergeDocs。 “在合并细分时,Lucene将确保不会创建超过maxMergeDocs的细分市场。”

无法将单个文件限制为特定大小。

单个段不会包含超过maxMergeDocs的文档数。但该段的大小可能仍然有所不同,因为某些文档可能具有比其他文档更多的唯一令牌。

您最初看到的必须是段合并,这是正常的并且在索引过程中发生。我认为除了拥有一个可笑的高mergeFactor(这将影响搜索性能)之外,还有其他方法可以避免这种情况。


1
投票

从solr 6开始,现在可以设置段的最大尺寸。请注意,maxMergeDocs已弃用。

默认的mergePolicyFactoryTieredMergePolicyFactory。它有一个属性MaxMergedSegmentMB,它控制段的大小。来自javadocs

如果合并将产生比setMaxMergedSegmentMB(double)更大的段,则策略将合并更少的段(如果该段有删除则一次减少到1)以使段大小保持在预算之下。

对于例如将最大段大小设置为3000 MB:

<mergePolicyFactory class="solr.TieredMergePolicyFactory">
    <int name="maxMergeAtOnce">10</int>
    <int name="segmentsPerTier">10</int>
    <int name="maxMergedSegmentMB">3000</int>
</mergePolicyFactory>
© www.soinside.com 2019 - 2024. All rights reserved.