может neo4j найти кратчайшие n путей по обходам с индексом? - PullRequest
0 голосов
/ 14 декабря 2011

Я читаю API вики от http://docs.neo4j.org/chunked/snapshot/rest-api-traverse.html и проверить мой код, я могу найти кратчайшие n путей по обходам, и могу найти узлы или отношения с индексом. но мои проекты имеют 300M узлов, когда я нахожу кратчайшие n путей с помощью Traversals, например, свойство данных отношения Имя содержит 'hi', если я использую метод fiter neo4j, это действительно медленно, я хочу использовать индекс (я его создал!), код как:

  {
      "order" : "breadth_first",
      "return_filter" : {
        "body" : "position.endNode().getProperty('name').toLowerCase().contains('t')",
        "language" : "javascript"
      },
      "prune_evaluator" : {
        "body" : "position.length() > 10",
        "language" : "javascript"
      },
      "uniqueness" : "node_global",
      "relationships" : [ {
        "direction" : "all",
        "type" : "knows"
      }, {
        "direction" : "all",
        "type" : "loves"
      } ],
      "max_depth" : 3
    }

я хочу:

{
  "order" : "breadth_first",
  "return_filter" : {
    "body" : "position.endNode().name:*hi*",
    "language" : "javascript"
  },
  "prune_evaluator" : {
    "body" : "position.length() > 10",
    "language" : "javascript"
  },
  "uniqueness" : "node_global",
  "relationships" : [ {
    "direction" : "all",
    "type" : "knows"
  }, {
    "direction" : "all",
    "type" : "loves"
  } ],
  "max_depth" : 3
}

Может кто-нибудь мне помочь?

1 Ответ

0 голосов
/ 14 декабря 2011

Это медленный первый раз или одинаково медленные последовательные запросы?Свойства загружаются для каждого узла / отношения в первый раз, когда любое свойство запрашивается для этого узла / отношения, и, возможно, вы видите снижение производительности.

Я думаю, что использование индекса поможет для узлов, которые ещезагружен еще, но не иначе.Делать это в состоянии покоя может быть непросто, так как вам придется выполнить поиск по индексу заранее и передать этот список в оценщик.Но это не масштабируется.Вместо этого можно написать расширение для этого?

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