lucene 索引优化
生活随笔
收集整理的這篇文章主要介紹了
lucene 索引优化
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天用了lukeall里面的一個(gè)功能optimize也就是索引優(yōu)化,
發(fā)現(xiàn)有花時(shí)間比較長但是優(yōu)化結(jié)果比較好,
索引里面的所有段文件都merge到一個(gè)段文件里去了,
于是自己就試了一下,雖然沒有l(wèi)ukeall優(yōu)化的好,
但起碼比之前幾百個(gè)碎文件要好的多了下面是代碼,lucene用的是4.8 當(dāng)然也可以用lukeall去優(yōu)化,但是你得找到一個(gè)版本和索引版本一致的lukeall ,或者搜索版本>lukeall版本>索引版本(得用三套才行 太麻煩了)
根據(jù)方法名稱大致就能知道是什么意思(其實(shí)我也有好多意思不知道 哈哈 ^_^)IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_48,analyzer);ConcurrentMergeScheduler scheduler = new ConcurrentMergeScheduler(); scheduler.setMaxMergesAndThreads(2, 1); scheduler.setMergeThreadPriority(1);TieredMergePolicy policy = new TieredMergePolicy(); policy.setMaxMergeAtOnce(10); policy.setMaxMergeAtOnceExplicit(30); policy.setMaxMergedSegmentMB(5120);//根據(jù)自己電腦配置設(shè)置 policy.setFloorSegmentMB(2); policy.setForceMergeDeletesPctAllowed(10); policy.setSegmentsPerTier(10.0); policy.setMaxCFSSegmentSizeMB(8 * 1024);//根據(jù)自己電腦配置設(shè)置 policy.setNoCFSRatio(1);conf.setRAMBufferSizeMB(16); conf.setMaxBufferedDocs(-1); conf.setReaderTermsIndexDivisor(1); conf.setTermIndexInterval(128); conf.setMergeScheduler(scheduler);conf.setMergePolicy(policy); conf.setUseCompoundFile(true);
?
這是之前的,
這是剛出爐的
少了很多碎文件,我知道肯定還能優(yōu)化的更完美,目前來說我只能優(yōu)化這么多,以后慢慢調(diào)試優(yōu)化。。
轉(zhuǎn)載于:https://www.cnblogs.com/wangnanhui/p/7039778.html
總結(jié)
以上是生活随笔為你收集整理的lucene 索引优化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 09. 用两个栈实现队列
- 下一篇: bootstrap-datetimepi