我有一個關於優化大Lucene索引的問題(現在是197 Gb--對於你們中的一些人聽起來可能不是那麼大)。 我使用的是2.9.4版本的Lucene,當我需要將900個段的索引優化爲更小的段數(理想情況下爲1-10)時,我纔到達狀態。我仍然調用2.9.4中提供的IndexWriter.optimize(),但設置合併因子失敗的方式相同。優化大Lucene索引失敗默默無聞
因此,發生什麼事情是,優化我的日誌(我已設置所有可能的日誌)一小時後,說優化已完成,任何日誌文件中都沒有錯誤。除了索引目錄中的文件仍然相同這一事實外,一切看起來都很好 - 沒有減少或刪除刪除的文件數量。 驅動器上有足夠的空間(300 Gb),沒有讀者或搜索者打開 - 索引是孤立的,專注於優化。
根據索引wirter日誌合併線程合併段和打印出一些段數從900到456迭代,然後突然說它將它們全部合併到16段(這是我的數量或段設置合併爲)
有沒有人有任何想法會發生什麼?我是否合併了太多細分市場?可以有任何操作系統相關(Windows Server 2008)的問題,如「太多的文件處理程序打開」(我可以在哪裏檢查該消息)? 在此先感謝
可以去lucene 4嗎? (也許3作爲一個停止間隙)有很多錯誤修復,你可能想 –
感謝您的建議,但我們完全依賴Lucene 2.4 API(與不贊成的命中等)。實際上,我解決了這個問題。我試着先編制幾個文檔,然後提交它們,然後在同一個線程中運行優化。這解決了這個問題。我只能認爲索引處於某種不一致的狀態,並且只有更少的寫/提交索引使其工作。 –