ES-06-ElasticSearch映射关系

本文介绍了ElasticSearch的映射关系(mapping)及其重要性,包括常用数据类型如keyword、boolean、text、integer、long等。创建索引时可以预设字段映射,若未设置,系统会自动匹配。通过PUT请求可以创建映射关系,例如创建名为'user001'的索引并设置相应字段类型。查询映射关系则使用GET请求。映射关系中的index关键字用于指定字段是否建立索引,默认为true。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明

  • ElasticSearch映射关系(mapping)
  • 常用数据类型:keyword、boolean、text、integer、long等。详细数据类型参考官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/7.9/mapping.html
  • ElasticSearch中所有存储的字段都被放在了映射关系中
  • 创建索引后,可以预选设置所有的字段映射关系,如果不设置,创建文档的时候会根据每个字段值自动匹配映射关系
  • 官方文档:https://www.elastic.co/cn/

常用操作

》创建映射关系

  • 相当于MySQL中的建表,但是创建文档的时候未创建的字段也会被追加进来

  • 注意:创建映射关系前需要先创建好索引

  • 请求格式:/<索引名称>/_mapping

  • 请求示例

    • 请求方式:PUT

    • 发送请求:

      curl -X PUT http://192.168.3.201:9200/user001/_mapping -H 'Content-Type:application/json' -d'
      {
          "properties": {
              "id": {
                  "type": "long",
                  "index": true
              },
              "name": {
                  "type": "keyword",
                  "index": true
              },
              "age": {
                  "type": "long",
                  "index": true
              },
              "sex": {
                  "type": "long",
                  "index": true
              },
              "tel": {
                  "type": "keyword",
                  "index": true
              },
              "address": {
                  "type": "text",
                  "index": false
              }
          }
      }'
      
      • 说明:index关键字表示指明该字段是否创建索引,默认true
    • 响应结果:

      {
          "acknowledged": true
      }
      

》查询映射关系

  • 相当于MySQL中的查看表结构

  • 请求格式:/<索引名称>/_mapping

  • 请求示例

    • 请求方式:GET

    • 发送请求:

      curl -X GET http://192.168.3.201:9200/user001/_mapping 
      
    • 响应结果:

      {
          "user001": {
              "mappings": {
                  "properties": {
                      "address": {
                          "type": "text",
                          "index": false
                      },
                      "age": {
                          "type": "long"
                      },
                      "id": {
                          "type": "long"
                      },
                      "name": {
                          "type": "keyword"
                      },
                      "sex": {
                          "type": "long"
                      },
                      "tel": {
                          "type": "keyword"
                      }
                  }
              }
          }
      }
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值