2013-08-20 5 views
3

Рассмотрим следующий пример: wiki с поддержкой wiki с большим количеством статей и многое, многое другое (история всех изменений). Сколько разница делает с помощью нескольких меток для идентификации каждого узлаneo4j cypher single vs multiple labels performance

article:Article:Public 
article:Article:Version 

и запрашивая затем дб с

MATCH article:Article:Public 

по сравнению с БД, организованной как

article:ArticlePublic 
article:ArticleVersion 

, который будет затем запроса соответствующие документы без необходимости перехвата этих двух групп

MATCH article:ArticlePublic 

говоря о производительности?

ответ

3

Итак, я закончил тем, что заполнил небольшой бит, чтобы проверить, как очень разные размеры помеченных групп могут влиять на производительность каждого другого. В результате вы можете свободно использовать любое количество ярлыков без какого-либо значительного влияния на производительность, при условии, что в этом сценарии вы указываете их от самого маленького до самого большого:

neo4j-sh (?)$ match n:Test return count(n); 
==> +----------+ 
==> | count(n) | 
==> +----------+ 
==> | 189222 | 
==> +----------+ 
==> 1 row 
==> 1571 ms 

neo4j-sh (?)$ match n:Test:One return count(n); 
==> +----------+ 
==> | count(n) | 
==> +----------+ 
==> | 170216 | 
==> +----------+ 
==> 1 row 
==> 1534 ms 

neo4j-sh (?)$ match n:Test:Two return count(n); 
==> +----------+ 
==> | count(n) | 
==> +----------+ 
==> | 19006 | 
==> +----------+ 
==> 1 row 
==> 526 ms 

neo4j-sh (?)$ match n:TestTwo return count(n); 
==> +----------+ 
==> | count(n) | 
==> +----------+ 
==> | 19082 | 
==> +----------+ 
==> 1 row 
==> 329 ms 

neo4j-sh (?)$ match n:Two:Test return count(n); 
==> +----------+ 
==> | count(n) | 
==> +----------+ 
==> | 19006 | 
==> +----------+ 
==> 1 row 
==> 306 ms 
0

Я бы сказал, что избежать многих поисков индекса даст вам лучшую производительность чтения (ArticlePublic), но займет больше места, поскольку вы используете множество индексов.

Что касается индексации: Article.Version в индексе статьи?

Смежные вопросы