带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(中)

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: 带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(中)

《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用—— 3.4.2.2.理解mapping(上) https://developer.aliyun.com/article/1231104


查看映射

 

通过 /_mapping ,我们可以查看 Elasticsearch 在一个或多个索引中的映射。

 

#Elasticsearch 文档写入示例:
PUT twitter/_doc/1
{
    "user": "kimchy",
    "post_date": "2009-11-15T13:12:00",
    "message": "Trying out Elasticsearch, so far so good?"
}
PUT twitter/_doc/2
{
    "user": "kimchy",
    "post_date": "2009-11-15T14:12:12",
    "message": "Another tweet, will it be indexed?"
}
PUT twitter/_doc/3
{
    "user": "elastic",
    "post_date": "2010-01-15T01:46:38",
    "message": "Building the site, should be kewl"
}

查看索引映射示例:


GET twitter/_mapping

Elasticsearch 根据我们索引的文档,为字段动态生成的映射:


{
  "twitter" : {
    "mappings" : {
      "properties" : {
        "message" : {
          "type" : "text",
          "fields" : {
            "keyword" : {
              "type" : "keyword",
              "ignore_above" : 256
            }
          }
        },
        "post_date" : {
          "type" : "date"
        },
        "user" : {
          "type" : "text",
          "fields" : {
            "keyword" : {
              "type" : "keyword",
              "ignore_above" : 256
            }
          }
        }
      }
    }
  }
}

注意:错误的映射,例如将年龄字段映射为 text 类型,而不是 integer,会导致查询出现令人困惑的结果。

 

检查一下,而不是假设你的映射是正确的。

 

自定义字段映射

 

尽管在很多情况下基本字段数据类型已经够用,但你经常需要为单独字段自定义映射,特别是字符串字段。自定义映射允许你执行下面的操作:

 

l 全文字符串字段和精确值字符串字段的区别

l 使用特定语言分析器

l 优化字段以适应部分匹配

l 指定自定义数据格式

l 还有更多

 

字段最重要的属性是 type 。


{
    "number_of_clicks": {
        "type": "integer"
    }
}

字符串字段类型,包括全文字符串 text 和精确值字符串 keyword。

 

text 类型字段的最重要属性是分析器 analyzer,默认 Elasticsearch 使用 Standard 分析器, 但你可以指定一个内置的分析器替代它,例如 whitespace 、 simple 、english、cjk:

 

{
   "message": {
    "type": "text",
    "analyzer": "cjk"
  }
}

《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用—— 3.4.2.2.理解mapping(下) https://developer.aliyun.com/article/1231102

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
Unix 网络安全 iOS开发
Mac 电脑如何安装Wireshark?
Mac 电脑如何安装Wireshark?
1368 0
Mac 电脑如何安装Wireshark?
|
XML 存储 安全
【揭秘SAML协议 — Java安全认证框架的核心基石】 从初识到精通,带你领略Saml协议的奥秘,告别SSO的迷茫与困惑
SAML(Security Assertion Markup Language)是由OASIS制定的基于XML的开放标准。它用于在身份提供者(IdP)和服务提供者(SP)之间交换身份验证和授权数据,从而支持跨域单点登录,提高身份认证和授权管理的安全性和效率。
876 2
【揭秘SAML协议 — Java安全认证框架的核心基石】 从初识到精通,带你领略Saml协议的奥秘,告别SSO的迷茫与困惑
|
安全 云计算
身份和访问管理(IAM)软件市场现状及未来发展趋势
本文研究全球及中国市场身份和访问管理(IAM)软件现状及未来发展趋势,侧重分析全球及中国市场的主要企业,同时对比北美、欧洲、中国、日本、东南亚和印度等地区的现状及未来发展趋势
身份和访问管理(IAM)软件市场现状及未来发展趋势
Sentinel学习圣经:从入门到精通 Sentinel,最全详解 (40+图文全面总结)
尼恩给大家做一下系统化、体系化的梳理,联合社群小伙伴,来一个Sentinel学习圣经:从入门到精通Sentinel。
|
数据采集 人工智能 自然语言处理
阿里云Elasticsearch AI语义搜索:解锁未来搜索新纪元,精准洞察数据背后的故事!
【8月更文挑战第2天】阿里云Elasticsearch AI场景语义搜索最佳实践
533 5
|
测试技术 Apache Windows
如何使用apache的ab压力测试小工具传参数
该内容是关于在Windows环境下使用PHPStudy中的Apache集成的ab工具进行性能测试的简要教程。
210 9
|
Java
Java中的匿名内部类(看这篇就够了)
Java中的匿名内部类(看这篇就够了)
1834 0
|
JSON API 网络架构
Index alias — Elastic Stack 实战手册
别名,是为一个或多个索引而命名的第二名称,第二名称不得与集群中任何索引同名;只要把第二名称和真实索引建立绑定关系,便可以使用别名对索引进行相关的操作。
714 0
Index alias — Elastic Stack 实战手册
|
存储 JSON 数据库
带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(上)
带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(上)
171 0
|
搜索推荐 API 索引
带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(下)
带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(下)
215 0

热门文章

最新文章