elasticsearch - 没有在字段上声明的类型 [join] 的处理程序

标签 elasticsearch aws-elasticsearch

我尝试在新的 AWS Elasticsearch 6.0 上使用连接数据类型创建索引。

Elasticsearch 6.0 文档中的以下说明:https://www.elastic.co/guide/en/elasticsearch/reference/6.0/parent-join.html

PUT my_index
{
  "mappings": {
    "doc": {
      "properties": {
        "my_join_field": { 
          "type": "join",
          "relations": {
            "question": "answer" 
          }
        }
      }
    }
  }
}

然后我收到以下错误:

{
  "error": {
    "root_cause": [
      {
        "type": "mapper_parsing_exception",
        "reason": "No handler for type [join] declared on field [my_join_field]"
      }
    ],
    "type": "mapper_parsing_exception",
    "reason": "Failed to parse mapping [doc]: No handler for type [join] declared on field [my_join_field]",
    "caused_by": {
      "type": "mapper_parsing_exception",
      "reason": "No handler for type [join] declared on field [my_join_field]"
    }
  },
  "status": 400
}

我想知道我是否遗漏了什么?谢谢!

最佳答案

我遇到了同样的问题。根本原因是 AWS 打包的 ElasticSearch 服务缺少模块。 如果您将本地安装的配置与 AWS 提供的配置进行比较,您会发现缺少此模块:

{
      "name" : "parent-join",
      "version" : "6.0.0",
      "description" : "This module adds the support parent-child queries and aggregations",
      "classname" : "org.elasticsearch.join.ParentJoinPlugin",
      "has_native_controller" : false,
      "requires_keystore" : false
}

功能现已在 AWS ES 6.0 中可用

关于elasticsearch - 没有在字段上声明的类型 [join] 的处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47820989/

相关文章:

ElasticSearch Nest 插入/更新

amazon-web-services - 使用 key 凭证连接到 AWS 中的 elasticsearch

ruby-on-rails - Elastic Search 与 Sunspot 的功能比较

c# - 与 ElasticSearch 相比,MongoDB 仅作为 NoSQL 数据库提供了哪些优势

elasticsearch - Elasticsearch将嵌套字段与值数组匹配

elasticsearch - 将查询与日期直方图结合

elasticsearch - AWS Elasticsearch:更多负载下的性能问题

node.js - "Cannot read property ' 预签名-过期 ' of undefined"

elasticsearch - 有什么方法可以改善ElasticSearch上的索引编制?

node.js - AWS Elastic Search Policy,只允许lambda访问Elastic Search