我有一个关于优化大 Lucene 索引的问题(现在是 197 Gb - 对你们中的某些人来说可能听起来没那么大)。我正在使用版本 2.9.4 的 Lucene,当我需要将具有 900 个段的索引优化为更少量的段(理想情况下为 1-10)时,我进入了一个状态。我仍在调用 2.9.4 中可用的 IndexWriter.optimize(),但设置合并因子以同样的方式失败。
所以,在优化我的日志一小时后(我已经设置了所有可能的日志)说优化已经完成并且任何日志文件中都没有错误。一切看起来都很好,除了索引目录中的文件仍然相同 - 没有减少或删除的文件数量被删除。我有足够的驱动器空间(300 Gb)并且没有打开阅读器或搜索器 - 索引被隔离并专注于优化。
根据索引 wirter 日志,合并线程合并段并迭代打印出从 900 到 456 的一些段数,然后突然它说它正在将所有这些段合并到 16 个段(这是我设置的一个或多个段合并到)
有谁知道会发生什么?我是否合并了太多细分?是否存在任何与操作系统相关的(Windows Server 2008)问题,例如“打开的文件处理程序太多”(我在哪里可以查看该消息)?提前致谢