Neo4j批量插入 - 索引导致OutOfMemoryError异常

时间:2012-12-06 14:12:19

标签: neo4j

我正在使用“batchimport”

向neo4j服务器添加大型数据集

BatchInserterIndex someIndex =                 indexProvider.nodeIndex(“some_index”,MapUtil.stringMap(“type”,“exact”));

    /** Looping large dataset */
    for (..) {

        Map<String, Object> testMap //Map with various properties    
        long id  = inserter.createNode(testMap);
        someIndex.add(id, testMap);
    }

在大约400k条目之后,我的代码抛出异常“java.lang.OutOfMemoryError:Java堆空间”。

当我没有使用索引时,它非常有效。我不时尝试刷新指数,但没有改善。

如何在使用索引的同时添加大型数据集?知道我哪里错了吗?

1 个答案:

答案 0 :(得分:1)

如果你的堆不是那么大,你可能会遇到lucene索引上的批量提交大小太高的问题。默认值为500,000个值。而且我担心你无法从公共API中改变它。我将尝试获得可以为版本1.9配置此批量大小的内容。