升级到neo4j 2.0 RC1后的性能问题

时间:2013-11-26 21:11:36

标签: java performance neo4j

我们有一个嵌入neo4j服务器的java应用程序。此应用程序从Oracle db加载一些数据,创建图表,然后用户可以按需执行特定于域的遍历和算法。

我们最近从1.9.3升级到了RC1。我们现在使用Schema和唯一约束如下:

Iterator<ConstraintDefinition> constraints = schema.getConstraints(
                DynamicLabel.label(label)).iterator();
        if (constraints == null || !constraints.hasNext()) {
            try {
                schema.constraintFor(
                        DynamicLabel.label(label))
                        .assertPropertyIsUnique(propertyName).create();
            } catch (org.neo4j.graphdb.ConstraintViolationException ex) {
                LOG.error("CONSTRAINT ALREADY DEFINED ON: "
                        + label);
            }
        }

问题是我们的应用程序启动时间变慢了10倍。对cpu时间进行采样显示以下内容:

jview capture

1 个答案:

答案 0 :(得分:0)

我们对应用程序进行了检测,并找到了缓慢的根本原因。以下主题将详细讨论我们发现的具体问题:

How to improve performance while committing nodes in bulk with Neo4j 2.0 RC1?