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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置/配置solr索引文件的最大大小?相关的知识,希望对你有一定的参考价值。

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

答案

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

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

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

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

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

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

另一答案

从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>

以上是关于如何设置/配置solr索引文件的最大大小?的主要内容,如果未能解决你的问题,请参考以下文章

SOLR 索引尺寸减小

Solr索引配置

如何使用Solr索引MySql数据库

Solr Highlighting:如何为同一字段请求多个片段长度?

solr索引服务器的配置和solrj集成开发总结

配置 Solr