Elasticsearch 映射参数详解 fields

 更新时间:2021年7月12日 15:00  点击:1470

Elasticsearch 映射参数 fields

fields

处于不同的目的,通过不同的方法索引相同的字段通常非常有用。这也是多字段的目的。例如,一个字符串字段可以映射为text字段用于全文本搜索,也可以映射为keyword字段用于排序或聚合。

PUT my_index
{
  "mappings": {
    "_doc": {
      "properties": {
        "city": {
          "type": "text",
          "fields": {
            "raw": { 
              "type":  "keyword"
            }
          }
        }
      }
    }
  }
}

note:city.raw字段是city字段的keyword版本。

GET my_index/_search
{
  "query": {
    "match": {
      "city": "york" 
    }
  },
  "sort": {
    "city.raw": "asc" 
  },
  "aggs": {
    "Cities": {
      "terms": {
        "field": "city.raw" 
      }
    }
  }
}

note:city字段用于全文本搜索。

note:city.raw用于排序与聚合。

多字段不能修改原始_source字段。

对于相同索引中具有相同名称的字段,fields设置允许有不同的设置。可以使用PUT映射API将新的多字段添加到已存在的字段中。

带有多个分析的多字段

多字段的另一个应用场景是使用不同的方法分析相同的字段以求获得更好的相关性。

PUT my_index
{
  "mappings": {
    "_doc": {
      "properties": {
        "text": { 
          "type": "text",
          "fields": {
            "english": { 
              "type":     "text",
              "analyzer": "english"
            }
          }
        }
      }
    }
  }
}

note:text.field字段使用english分析器。

elasticsearch注解实现fields

mapping效果:

"label": {
            "type": "keyword",
            "fields": {
              "IKS": {
                "type": "text",
                "analyzer": "ikIndexAnalyzer"
              }
            }
          }

@Column(name = "标签")
    @MultiField(
            mainField = @Field(type = FieldType.Keyword),
            otherFields = {
                    @InnerField(suffix = "IKS", type = FieldType.Text, analyzer = "ikIndexAnalyzer")
            }
    )
    protected String label;

以上为个人经验,希望能给大家一个参考,也希望大家多多支持猪先飞。

[!--infotagslink--]

相关文章

  • Elasticsearch工具cerebro的安装与使用教程

    这篇文章主要介绍了Elasticsearch工具cerebro的安装与使用教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-08
  • 解决ant Design中this.props.form.validateFields未执行的问题

    这篇文章主要介绍了解决ant Design中this.props.form.validateFields未执行的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-10-28
  • docker 启动elasticsearch镜像,挂载目录后报错的解决

    这篇文章主要介绍了docker 启动 elasticsearch镜像,挂载目录后报错的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-20
  • 一文搞定Docker安装ElasticSearch的过程

    通过本文可以帮助大家快速学习Docker安装ElasticSearch的过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧...2021-08-31
  • golang elasticsearch Client的使用详解

    这篇文章主要介绍了golang elasticsearch Client的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-04
  • 使用postman操作ElasticSearch的方法

    这篇文章主要介绍了使用postman操作ElasticSearch的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-05
  • java连接ElasticSearch集群操作

    这篇文章主要介绍了java连接ElasticSearch集群操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-17
  • elasticsearch+logstash并使用java代码实现日志检索

    这篇文章主要介绍了elasticsearch+logstash并使用java代码实现日志检索,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-22
  • Java elasticSearch-api的具体操作步骤讲解

    这篇文章主要介绍了elasticSearch-api的具体操作步骤讲解,本文通过详细的步骤介绍和图文代码展示讲解了该项技术,需要的朋友可以参考下...2021-06-29
  • Elasticsearch属性单词常用解析说明

    这篇文章主要介绍了Elasticsearch属性单词常用解析说明,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下...2021-08-10
  • 时间轻松学会.NET Core操作ElasticSearch7的方法

    这篇文章主要介绍了时间轻松学会.NET Core操作ElasticSearch7,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-09-22
  • Java调用elasticsearch本地代码的操作方法

    这篇文章主要介绍了Java调用elasticsearch本地代码的操作方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-04-09
  • spring-data-elasticsearch @Field注解无效的完美解决方案

    这篇文章主要介绍了spring-data-elasticsearch @Field注解无效的完美解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-07-27
  • 在Docker中安装Elasticsearch7.6.2的教程

    这篇文章主要介绍了在Docker中安装Elasticsearch7.6.2的教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-19
  • Java elasticsearch安装以及部署教程

    这篇文章主要介绍了elasticsearch安装以及部署教程,内涵详细的图文展示与案例介绍,能够帮助你从0成功部署这个框架,需要的朋友可以参考下...2021-06-29
  • 关于注解式的分布式Elasticsearch的封装案例

    这篇文章主要介绍了关于注解式的分布式Elasticsearch的封装案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-26
  • Python插入Elasticsearch操作方法解析

    这篇文章主要介绍了Python插入Elasticsearch操作方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-04-22
  • Elasticsearch.Net使用入门教程(1)

    这篇文章主要为大家详细介绍了Elasticsearch.Net使用入门教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
  • SpringBoot整合Elasticsearch游标查询的示例代码(scroll)

    这篇文章主要介绍了SpringBoot整合Elasticsearch游标查询(scroll),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-17
  • Elasticsearch中store field与non-store field的区别说明

    这篇文章主要介绍了Elasticsearch中store field与non-store field的区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-07-12