Neo4j - 如何提高查询响应时间?

时间:2015-05-19 18:44:53

标签: neo4j cypher

我有一个以449824毫秒返回的查询。结果集有44行。 这是查询:
$ match (w:Woka) where (w.woka_title =~ '.Benedictions.') return w.woka_title;

以下是相关指数:

ON:Woka(author_id)ONLINE
ON:Woka(publisher_id)ONLINE
ON:Woka(language_id)ONLINE
ON:Woka(woka_title)ONLINE
ON:Woka(woka_id)ONLINE

这是执行计划:

Compiler CYPHER 2.2
Planner COST
Projection
  |
  +Filter
    |
    +NodeByLabelScan
+-----------------+---------------+-----------------+-----------------------------------+
|        Operator | EstimatedRows |     Identifiers |                             Other |
+-----------------+---------------+-----------------+-----------------------------------+
|      Projection |      14849147 | w, w.woka_title |                      w.woka_title |
|          Filter |      14849147 |               w | w.woka_title ~= /{  AUTOSTRING0}/ |
| NodeByLabelScan |      19798863 |               w |                             :Woka |
+-----------------+---------------+-----------------+-----------------------------------+

如何才能获得更快的结果?

1 个答案:

答案 0 :(得分:3)

正则表达式匹配不受架构索引的支持。目前架构索引仅用于使用=IN <values>的完全匹配。即将发布的版本将在此提供更多功能。

目前,如果您想使用正则表达式匹配,则需要使用manual indexes