zoukankan      html  css  js  c++  java
  • Lucene中的合并因子mergeFactor

    mergeFactor
    是用来决定segment该如何被addDocument()方法进行合并的。
    当mergeFactor取比较小的值时,索引时所使用的内存较少
    而且搜素未优化的速度会比较快。因此,mergeFactor取值较大时(比如大于10),
    适合于批量的索引建立,而当搜索未优化索引的速度会更快,但是索引建立的速度会比较慢。
    当mergeFactor取较大的值时,建立索引的速度会比较快。因此,mergeFactor取值较大时(比如大于10)
    适合于这些批量的索引建立,而当mergeFactor取较小的值时,适合于间歇性的向索引加入文档。
    这个合并因子在Lucene的索引建立过程中起到很重要的作用:
    (1)、将mergeFactor的因子设为10, 那么每向索引添加10个Document时,就会有一个新的segment在磁盘上建立起来。
    (2)、当第10个这样的segment建立好后,它们会被合并成为一个具有100个Document的新segment。
    (3)、接下来,每个100个Document又会创建一个新的segment,当第999个文档被加入索引时,
    此时磁盘上应该已经有了9个segment,其中每个都有100个Document,而第901个到999个Document此时正在内存中,
    还未被写入磁盘中。
    (4)、倘若此时,再向索引中加入一个Document,那么,前面9个segment就会和这第10个
    新创建的segment进行合并,成为一个具有1000个Documentde segment。过程依次类推。


    //为了防止segment中文档数量会增长的快,所以用maxMergementDocs限制最大的存储在segment的文档数。
    //minMergementDocs又叫做maxBufferedDocs指的是每次将索引被刷到磁盘的时候,内存的数量

  • 相关阅读:
    JavaScript DOM API初步(整理)
    MySQL与Oracle之间互相拷贝数据的Java程序
    MySQL与Oracle的区别之我见
    js原生:封装document.getElementByClassName()函数
    js和jquery获取父级元素、子级元素、兄弟元素的方法
    封装bt轮播图淡入淡出效果样式
    Bootstrap每天必学之导航条
    全面解析Bootstrap图片轮播效果
    JS如何获取页面可见区域高度
    怎样才能成为优秀的前端工程师
  • 原文地址:https://www.cnblogs.com/1130136248wlxk/p/5036517.html
Copyright © 2011-2022 走看看