如何在neo4j遍历的每一步中指定哪个关系类型作为当前节点的函数使用?

问题描述:

我想使用neo4j遍历API来遍历我的图,但我需要能够指定在每个步骤使用哪种关系类型,并且要使用的关系类型需要是当前节点的函数。有没有办法做到这一点?如何在neo4j遍历的每一步中指定哪个关系类型作为当前节点的函数使用?

在当前的Traverser API中,您无法选择精确的关系来遍历。相反,你需要采用更细化的node.getRelationships()方法,选择你想要的和结束的方法,等等。 算法比使用遍历器得到更多的冗长,但给你更多的灵活性。对于修补方法,Gremlin支持选择要遍历的边的函数的概念,请参阅here。对于Java级别的性能,这将很快实施,使用Blueprint Pipes

HTH

/彼得·纽鲍尔

+0

嗨感谢您的答复。我可以采用粒度方法,但是我读到遍历的node.getRelationships()方法应该比使用内置遍历慢几个数量级。 – James 2010-03-12 05:48:11

+0

@James:使用粒度方法不应该比内置遍历慢,除非你以某种方式搞砸了。我真的很想知道你读到哪里?顺便说一句,一个新的遍历器框架正在开发中,它可以做你描述的那种遍历。 – nawroth 2010-03-12 09:08:18