Neo4j弹性搜索集成

时间:2017-02-24 15:46:20

标签: elasticsearch neo4j

我有数据集(问题),它们映射到多个标签,这些标签本质上是分层的。 所以有一个问题映射到t1和t2标签。 t1有父p1,p1有父p2。(p2 - > p1 - > t1 - 映射到---> A)

所以我将我的数据存储在neo4j中,我希望得到A作为p2标签的结果。我正在使用密码轻松获得结果。但现在我在同一个查询中排序和限制,因为neo4j不能在这样的查询中使用索引,我正在考虑将neo4j与elasticsearch集成,但我无法获得如何查询?

$query = "MATCH p=(n:messages)-[r:TAGGED_TO]->(k:tags{tag_id:{tag_id}}) RETURN p,n ORDER by n.msgId desc limit 5";
$params['tag_id'] = (int)$tag_id;
$result = $this->dbHandle->run($query,$params);

现在排序和限制不使用索引。我想以优化的方式运行此查询。

1 个答案:

答案 0 :(得分:0)

您可以使用Graphaware plugin将neo4j连接到弹性或apoc plugin,特别是apoc.es. *函数...有关详情,请参阅documentation