Neo4j: создание отношений между существующими подграфами происходит очень медленно - PullRequest
0 голосов
/ 11 февраля 2019

При создании отношений между существующими узлами (см. Q1 ниже) (по индексированным свойствам) я вижу примерно 24000 операций в секунду.Однако, когда я сопоставляю те же узлы, но на этот раз, включая подграфы (Q2), производительность падает примерно до 9000 операций в секунду.Я не уверен, является ли это действительной ошибкой, или я неверно истолковываю то, как, по моему мнению, Сайфер должен работать.

Q1 (работает со скоростью около 24000 операций в секунду)

UNWIND {batch} AS rel
    MATCH (c1:ChildA {key: rel.akey})
    MATCH (c2:ChildB {key: rel.bkey})
    CREATE (c1)-[:FRIENDS_WITH]->(c2)

Q2 (работает со скоростью около 9000 операций в секунду)

UNWIND {batch} AS rel
    MATCH
        (p1:ParentA {key: 'Chris'})
        <-[:BELONGS_TO]-
        (c1:ChildA {key: rel.akey})
    MATCH
        (p2:ParentB {key: 'Zoe'})
        <-[:BELONGS_TO]-
        (c2:ChildB {key: rel.bkey})
    CREATE (c1)-[:FRIENDS_WITH]->(c2)

Редактировать 12-02-2019 7:48: добавлены планы запросов профиля

Профиль Q1

профиль Q2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...