[ lucene FAQ ] 当磁盘索引被IndexSearcher打开时,为什么优化操作后索引容量翻倍?...
生活随笔
收集整理的這篇文章主要介紹了
[ lucene FAQ ] 当磁盘索引被IndexSearcher打开时,为什么优化操作后索引容量翻倍?...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
lucene問題匯總:
Lucene常見問題匯總
?
?
當IndexSearcher打開一份磁盤索引后,IndexSearcher實例持有的是打開索引時的一份鏡像索引,而執行優化動作后,將會把優化后的索引存儲到原磁盤路徑下,導致索引容量翻倍。
那么怎么解決這個問題呢?IndexSearcher實例執行re-open動作,然后再執行優化操作,此時的優化操作很快,相當于是刪除之前IndexSearcher持有的鏡像索引。
特別是在實時索引過程中,對大索引的優化一般比較耗時,因此合理的解決方案是:單獨開一條線程執行優化操作,當優化完成后對IndexSearcher實例進行re-open操作,然后再執行一次優化操作。
在這一系列過程中,不會因為優化操作而對檢索服務造成影響,也不會占用額外的磁盤空間(第二次優化的時候會將重復的索引文件進行刪除,節約磁盤空間)。
但是必須注意的是:在第一優化操作時,必須保證空閑磁盤空間大于目前的索引容量。
總結
以上是生活随笔為你收集整理的[ lucene FAQ ] 当磁盘索引被IndexSearcher打开时,为什么优化操作后索引容量翻倍?...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高端企业级存储IBM XIV访谈视频
- 下一篇: 关于java数组拷贝的性能