在Neo4j中设置标签需要很长时间

在Neo4j中设置标签需要很长时间,neo4j,cypher,graph-databases,Neo4j,Cypher,Graph Databases,我正在使用Neo4j 2.0.0.M05,我的数据库中有近5000万个节点,我尝试为这些节点创建标签,如 MATCH (n) WHERE has(n.Gender) SET n :Person RETURN n 这需要很长时间,如何解决问题?您在同一事务中同时命中数据库中的每个节点。你可能需要把它分成几块。从像这样的每一个密码命令10k开始,如果这些命令运行良好,可以尝试更大的尺寸: MATCH (n) WHERE NOT n:Person AND has(n.Gender) WITH n

我正在使用Neo4j 2.0.0.M05,我的数据库中有近5000万个节点,我尝试为这些节点创建标签,如

MATCH (n)
WHERE has(n.Gender)
SET n :Person
RETURN n 

这需要很长时间,如何解决问题?

您在同一事务中同时命中数据库中的每个节点。你可能需要把它分成几块。从像这样的每一个密码命令10k开始,如果这些命令运行良好,可以尝试更大的尺寸:

MATCH (n)
WHERE NOT n:Person AND has(n.Gender)
WITH n
LIMIT 10000
SET n:Person
RETURN count(n) as number_set;

什么是:5个Crore节点?我是说5000万个节点。除了给出的批处理答案外,您可能可以消除
返回n
-如果您只是添加一个标签,则无需将所有内容返回给您。看起来这在@Wes的回答中被删除了,因此我在评论中指出了这一点。。。