Neo4j BatchInserter慢速关机

时间:2016-04-08 10:33:10

标签: neo4j neo4j-batch-inserter

我使用Neo4j的BatchInserter在大图中插入不同数量的关系(5亿+节点)

速度极快,每分钟插入1000多个关系。

但即使只插入少量关系,关机也很慢,需要一个多小时。

查看org.neo4j.unsafe.batchinsert.BatchInserterImpl.shutdown()内部,我发现它有很多操作,包括repopulateAllIndexes()

我不知道关闭的哪一部分需要这么长时间,但如果我知道新关系不会影响任何索引这一事实,是否值得继承BatchInserterImpl并跳过其中一些关机操作?

1 个答案:

答案 0 :(得分:0)

是的,BatchInserter并没有经过很长时间来优化关闭过程,而不仅仅是重建受影响的索引。有一个布尔值控制它,它只是在任何节点上是否有任何标签被更改。如果是,则触发索引的完全重建(在一个商店扫描之外)。正如你所提到的,这可能会得到改善。