如何限制neo4j遍历的结果与新造影



如果这是一个简单的问题,我很抱歉,但我求助于 SO 的智慧,让我克服这个颠簸:)

我正在使用 RoR 3.1.1 和 neography gem。

我目前有一个 neo4j 图,其中的人节点与关系作为"朋友"连接它们。 给定特定人的节点,我想一次浏览他们的朋友的朋友(2 度节点)的结果 5 个。 现在,我使用以下遍历代码,它一次获得所有朋友的朋友(可能需要很长时间,以至于会导致超时):

    nodes = @neo.traverse(user_node,"nodes", {"order" => "breadth first",
                                          "uniqueness" => "node global",
                                          "relationships" => {"type"=> "friends", "direction" => "all"},
                                          "return filter" => {
                                            "language" => "javascript",
                                            "body" => 
                                            "position.length() == 2;"},
                                          "depth" => 2}) 

从neo4j网站(http://docs.neo4j.org/chunked/stable/rest-api-traverse.html#rest-api-creating-a-paged-traverser)来看,似乎已经有分页遍历这样的东西,但我没有看到任何关于这样做的参考资料。

有人可以提供示例代码来展示如何在可能的情况下使用 neography 执行此操作,如何在必要时在没有 neography 的情况下执行此操作,或者解决方法,例如限制我已经在做的示例遍历返回的结果数量? 谢谢!

你能为此使用 Cypher 查询吗,http://docs.neo4j.org/chunked/snapshot/cypher-query-lang.html,比如

START n = node(0) Match n-[:friends]->()-[:friends]->fof RETURN fof SKIP 0 LIMIT 5

对于前 5 个朋友?

相关内容

  • 没有找到相关文章

最新更新