【问题标题】:Out of memory while indexing with Lucene使用 Lucene 进行索引时内存不足
【发布时间】:2014-07-29 18:08:03
【问题描述】:

我正在使用 Lucene 4.9.0 来索引 23k 个文件,但现在我收到了 java.lang.OutOfMemoryError: Java heap space 消息。 我不想增加“堆大小”,因为文件数量每天都在增加。 如何在没有OOM问题的情况下索引所有文件并增加“堆空间”?

【问题讨论】:

    标签: java lucene


    【解决方案1】:

    你的问题太模糊,没有什么意义。

    首先,23K 文件可以是 1 字节/每个或 1G/每个。我们应该如何知道里面有什么以及它们的重量?

    其次,你说

    我不想增加“堆大小”,因为 <...>

    在你说完之后

    如何在没有OOM问题的情况下索引所有文件并增加“堆空间”

    你能决定是否可以增加堆空间吗?

    索引数据需要一定数量的内存,而您对此无能为力。也就是说,需要的最多内存是在合并过程中,您可以play with the merge factor 看看这是否对您有帮助。

    【讨论】:

    • 抱歉不一致,我不想增加堆大小。我有大约 13G 大小可变的文件。谢谢!
    • 您可以获取您的号码并通过memory and storage estimator 运行它们,也可以看到(大致)您的立场。但事实是,无论您的愿望如何,您都无法以 100 美元购买一辆新的法拉利。
    猜你喜欢
    • 1970-01-01
    • 2012-02-21
    • 2018-11-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    • 2011-07-17
    • 2017-06-22
    • 2013-05-17
    相关资源
    最近更新 更多