elasticsearch 如何根据elasticsearch中的语言从字段中获取值,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch 如何根据elasticsearch中的语言从字段中获取值,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch 如何根据elasticsearch中的语言从字段中获取值

elasticsearch 如何根据elasticsearch中的语言从字段中获取值,elasticsearch,kibana,elasticsearch,Kibana,我的ES索引与下面的映射类似 "mappings": { "properties": { "id": { "type": "integer" }, "name": { "type": "text" }, "age": { "typ

我的ES索引与下面的映射类似

"mappings": {
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "text"
    },
    "age": {
      "type": "integer"
    },
    "note": {
      "type : text "
    }
note
字段中,我有许多阿拉伯语的值,还有许多英语和其他语言的值。。 我怎样才能得到阿拉伯语的值呢

注意:我有数百万个文档

您可以使用来实现多语言搜索

{
  "mappings": {
    "properties": {
      "title": { 
        "type": "text",
        "fields": {
          "en": { 
            "type":     "text",
            "analyzer": "english"
          },
          "ar": { 
            "type":     "text",
            "analyzer": "arabic"
          }
        }
      }
    }
  }
}

如果您使用了相同的字段对所有语言内容进行索引,那么您需要使用适当的分析器在特定于语言的字段中对其进行索引(以获得更好的搜索结果)。更多信息请参考我的答案details@MajdAlDeenm,是的,但不幸的是,正如我在问题中的评论中所提到的,如果您已经将同一领域中的所有语言文档混合在一起,那么这是不可能的。除了使用适当的mapping@MajdAlDeen,您可以使用来重新编制索引,并使用您可以在零停机的情况下完成。感谢您的帮助,我会尝试的。我希望我能找到一种更简单的方法:)@MajdAlDeen,谢谢你的更新,我已经实现了这一点,并且在mukti语言搜索中做了很多工作,到目前为止,这是我所知道的最新版本支持的方法,但是如果你找到更好的方法,请告诉我:)@MajdAlDeen,只需一个请求,如果你觉得答案有用,请投票并接受。稍后,如果你找到更好的方法,我将非常乐意将其包括在我的答案中,但这样至少问题不会被公开这么久。