在Neo4j图中遍历旅行时间

时间:2017-06-16 11:03:08

标签: time neo4j graph-traversal

我在NEO4j中有一个图表,当我向neo4j服务器发送一个REST请求时,我得到源节点和目标节点之间的遍历时间(t1),但当我交换我的节点时,我得到不同的遍历时间(t2)目标节点和源节点,尽管它们之间有相同数量的边和节点。

为了进一步说明,假设我的图形类似于Node1 - >节点2 - >节点3。我得到了Node1(Source)和Node3(Target)之间路径的遍历时间T1,当我找到Node3(Source)和Node1(Target)之间的路径时,我得到遍历时间T2。理想情况下,T1和T2应该相等,但我得到的值不同。获得不同遍历时间的原因是什么?

我甚至尝试将相同的Source请求发布到Target,每次请求都会得到不同的遍历时间。

当我发布请求时,我得到一个JSON字符串,它有边缘。我查询了“sourceNodeId”:7091和“targetNodeId”:343643之间的距离。

"edges": [
        {
            "sourceNodeId": 7091,
            "id": 494470,
            "type": "test",
            "targetNodeId": 80985
        },
        {
            "sourceNodeId": 73698,
            "id": 1316749,
            "type": "test",
            "targetNodeId": 80985
        },
        {
            "sourceNodeId": 73698,
            "id": 1317536,
            "type": "test",
            "targetNodeId": 343643
        }
    ]

此请求的响应时间为650毫秒。

当我查询“sourceNodeId”:343643和“targetNodeId”:7091之间的距离时,我得到相同的边,但此请求的响应时间是900毫秒

"edges": [
        {
            "sourceNodeId": 7091,
            "id": 494470,
            "type": "test",
            "targetNodeId": 80985
        },
        {
            "sourceNodeId": 73698,
            "id": 1316749,
            "type": "test",
            "targetNodeId": 80985
        },
        {
            "sourceNodeId": 73698,
            "id": 1317536,
            "type": "test",
            "targetNodeId": 343643
        }
    ]

0 个答案:

没有答案