分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

Lucene4.0 LogMergePolicy

发布时间:2023-09-06 01:47责任编辑:林大明关键词:暂无标签
???????????????????????????
???????????????????????

其特点是给定的段列表顺序归并,不像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。

???????????????
???????????????????
???????????

Lucene4.0 LogMergePolicy

原文地址:https://www.cnblogs.com/llguanli/p/8683854.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved