索引Neo4j与Elasticsearch合作

时间:2017-05-16 10:10:53

标签: elasticsearch neo4j graphaware

我正在尝试安装图形辅助搜索以将Neo4j与ElasticSearch(2.3.1)集成,如图here所示。但我正在努力用curl定义索引。

当我尝试任何像这样的curl命令时:

curl -XPUT http://localhost:9200/Person/_settings?index.gas.neo4j.user=neo4j

我收到此错误消息:

{"error":{"root_cause":[{"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"Person","index":"Person"}],"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"Person","index":"Person"},"status":404}

我们以电影数据库(电影,人物)为例。如何定义和配置Neo4j以索引MoviePerson,以便我可以使用Elasticsearch调用它们?

更新

例如:

CURL XGET http://localhost:9200/person/_search?pretty=true

我得到了这个结果:

{
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 0,
    "max_score" : null,
    "hits" : [ ]
  }
}

但实际上我期望的是返回所有Person个节点。 如何告诉person的{​​{1}}索引指向Elasticsearch中的Person个节点?

这些是Neo4j索引的设置:

person

curl XGET http://localhost:7474/person/_settings?pretty

1 个答案:

答案 0 :(得分:2)

GraphAidedSearch设置添加到ES索引需要创建此索引,如上所述。

您可以通过发出以下CURL请求来执行此操作:

CURL -XPUT "http://localhost:9200/Person

使用Elasticsearch扩展程序(插件),您可以使用基于图表的建议来增强搜索结果,这要求您至少对Elasticsearch本身有所了解。

我强烈建议您在使用任何插件之前先学习Elasticsearch的基础知识。