博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lucene4.0 LogMergePolicy
阅读量:5860 次
发布时间:2019-06-19

本文共 631 字,大约阅读时间需要 2 分钟。

其特点是给定的段列表顺序归并,不像TieredMergePolicy那样按大小排序之后决定。

norm = log(10),levelFloor=log(minMergeSize)/norm,对段列表中的元素,加入level值为log(size)/norm(即使log 10 size)的seg。

从列表位置0開始,取最大的logLevel为maxLevel,levelBottom=(float)(max-0.75)(假设maxLevel<=levelFloor,levelBottom=-1.0,levelBottom<levelFloor则levelBottom=levelFloor)。

从后往前找到第一个level大于等于levelBottom的位置upto,在[start, upto + 1)中以10个一组。在当中假设找不到不论什么size >= maxMergeSize,sizeDocs >= maxMergeDocs或正在合并的段时,将其加入merges数组。

下次则从1+upto位置開始找归并段。

findForceMerges仅仅发生在IndexWriter中有maxNumSegments限制的情况下。

LogDocMergePolicy中size依照sizeDocs计算,minMergeSize默觉得1000.

LogByteSizeMergePolicy中默认minMergeSize是1.6M,maxMergeSize是2G。

转载地址:http://xjrjx.baihongyu.com/

你可能感兴趣的文章
深入剖析通信层和RPC调用的异步化(上)
查看>>
WiFi万能钥匙万玉权:管理应该是“自下而上”
查看>>
“Scaling Lean”作者Ash Maurya访谈
查看>>
并行图像分类:在Azure HDInsight Spark上使用Cognitive Toolkit与TensorFlow
查看>>
QCon2016旧金山大会焦点分享者确认
查看>>
快看漫画大数据平台的模型思维与用户增长实践
查看>>
从蚂蚁金服实践入手,带你深入了解 Service Mesh
查看>>
RancherOS:一个运行Docker容器的最小Linux操作系统
查看>>
Javaslang 3.0之路
查看>>
GitHub GraphQL API已正式可用
查看>>
Spring框架5.0版本发布相关的技术访谈
查看>>
每日7千次的跨部门任务调度,有赞怎么设计大数据开发平台?
查看>>
宜人贷CTO段念:我与“研发管理”
查看>>
IBM提出8位深度网络训练法,提速4倍同时保持高精度
查看>>
MyHeritage是如何实现发布到生产环境的
查看>>
Python locale 多语言模块和我遇到的坑
查看>>
苹果应用提交中概念明晰与IPv6 Issue总结
查看>>
搭建ES集群
查看>>
浏览器的兼容性
查看>>
Android Retrofit 实现文字(参数)和多张图片一起上传
查看>>