【ES从入门到实战】十九、全文检索-ElasticSearch-映射-添加新的字段映射

接第18节

3)、新版本改变

ES7 及以上移除了 type 的概念。

  • 关系型数据库中两个数据表示是独立的,即使他们里面有相同名称的列也不影响使用,但ES中不是这样的。 elasticsearch 是基于 Lucene 开发的搜索引擎,而 ES 中不同 type 下名称相同的 filed 最终在 Lucene 中的处理方式是一样的。
    • 两个不同 type 下的两个 user_name,在 ES 同一个索引下其实被认为是同一个 filed,你必须在两个不同的 type 中定义相同的 filed 映射。否则,不同 type 中的相同字段名称就会在处理中出现冲突的情况,导致 Lucene 处理效率下降。
    • 去掉type就是为了提高 ES 处理数据的效率。

Elasticsearch 7.x:

  • URL中的 type 参数为可选。比如,索引一个文档不再要求提供文档类型。

Elasticsearch 8.x:

  • 不再支持URL中的type参数。

解决:
1)、将索引从多类型迁移到单类型,每种类型文档一个独立索引
2)、将已存在的索引下的类型数据,全部迁移到指定位置即可。详见数据迁移

1、创建映射

创建索引并指定映射

PUT /my-index
{
  "mappings": {//映射规则
    "properties": {
      "age":    { "type": "integer" },  
      "email":  { "type": "keyword"  },//keyword不会进行全文检索 
      "name":   { "type": "text"  }//text保存的时候进行分词,搜索的时候进行全文检索   
    }
  }
}

在这里插入图片描述

2、添加新的字段映射
PUT /my-index/_mapping
{
  "properties": {
    "employee-id": {
      "type": "keyword",
      "index": false//索引选项控制是否对字段值建立索引。 它接受true或false,默认为true。未索引的字段不可查询。
    }
  }
}

在这里插入图片描述

3、更新映射

对于已经存在的映射字段,我们不能更新。更新必须创建新的索引进行数据迁移

参考文档-mapping


参考:

Elasticsearch Reference

elastic

全文搜索引擎 Elasticsearch 入门教程

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于微服务中使用Elasticsearch问题,可以提供以下的一些基本信息: Elasticsearch是一个开源的分布式搜索和分析引擎,广泛用于构建实时的、可伸缩的全文搜索应用。在微服务架构中,可以将Elasticsearch作为一个独立的服务使用,提供全文搜索和数据分析的功能。 在微服务架构中使用Elasticsearch有以下几个常见的场景: 1. 日志收集和分析:微服务架构中的每个服务都产生大量的日志,使用Elasticsearch可以将这些日志集中存储,并进行实时的搜索和分析。通过对日志进行聚合、过滤和统计,可以方便地进行故障排查、性能优化等工作。 2. 数据检索和搜索:微服务架构中的各个服务通常需要对大量的数据进行查询和搜索,使用Elasticsearch可以提供高效的全文搜索和过滤功能。通过建立索引和定义搜索查询,可以快速地检索到符合条件的数据。 3. 数据分析和统计:微服务架构中的各个服务产生的数据可以通过Elasticsearch进行聚合和统计分析。通过使用Elasticsearch的聚合功能,可以方便地对数据进行分组、求和、计数等操作,得到各种统计指标。 为了在微服务中使用Elasticsearch,一般需要进行以下几个步骤: 1. 安装和配置Elasticsearch集群:根据自己的需求,安装和配置一个或多个Elasticsearch节点组成一个集群。可以使用官方提供的安装包或者Docker容器来方便地进行安装和配置。 2. 定义索引映射:在Elasticsearch中,数据通过索引进行组织和管理。每个索引可以包含一个或多个类型,每个类型定义了数据的结构和字段。在使用Elasticsearch之前,需要先定义好索引和类型的映射关系。 3. 数据的索引和搜索:将需要进行搜索和分析的数据通过Elasticsearch的API进行索引。可以使用Elasticsearch提供的各种API来进行数据的增删改查操作。通过定义搜索查询,可以对索引中的数据进行搜索和过滤。 4. 监控和优化:在使用Elasticsearch的过程中,需要对集群进行监控和优化。可以使用Elasticsearch提供的监控工具或者第三方工具来监控集群的状态和性能,并根据需要进行优化。 当然,以上只是对微服务中使用Elasticsearch的一个简单介绍,实际使用中还需要根据具体的业务需求进行更详细的配置和使用。希望以上信息对你有所帮助!如果有任何问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值