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

sycxhyv7  于 2021-06-10  发布在  ElasticSearch
关注(0)|答案(1)|浏览(326)

我有es索引类似于下面的Map

"mappings": {
  "properties": {
    "id": {
      "type": "integer"
    },
    "name": {
      "type": "text"
    },
    "age": {
      "type": "integer"
    },
    "note": {
      "type : text "
    }

note field,我有很多阿拉伯语的值,还有很多英语和其他语言的值。。我怎样才能得到阿拉伯语的值呢
注:我有数百万份文件

kh212irz

kh212irz1#

您可以使用analyzer的多字段来实现多语言搜索

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

请参阅使用elasticsearch进行多语言搜索的媒体博客

相关问题