es映射配置(_mapping)

文章目录

1、创建映射字段

json 复制代码
PUT /索引库名/_mapping
{
  "properties": {
    "字段名": {
      "type": "类型",
      "index": true,
      "store": true,
      "analyzer": "分词器"
    }
  }
}
json 复制代码
POST /atguigu/_mapping
{
  "properties": {
    "title": {
      "type": "text",
      "index": true,
      "analyzer": "ik_max_word"
    },
    "images": {
      "type": "keyword",
      "index": false
    },
    "price": {
      "type": "double"
    }
  }
}

您提供的 POST 请求是用于在 Elasticsearch 中为名为 atguigu 的索引(如果该索引尚不存在,则创建它)设置映射(mapping)的。这个请求看起来是正确的,但是有几个小细节和潜在的问题需要注意:

  1. 索引的存在性 :如果索引 atguigu 已经存在,并且已经有了不同的映射配置,那么直接发送这个 POST 请求可能会导致错误,因为 Elasticsearch 不允许更改已存在字段的类型或某些其他属性。在这种情况下,您可能需要先删除索引(如果数据允许的话),或者创建一个新的索引。

  2. 字段类型

    • title 字段被设置为 text 类型,这是正确的,因为 text 类型用于全文搜索,可以包含大量文本,并且支持分词。您还指定了 analyzerik_max_word,这是一个常见的用于中文分词的分析器。
    • images 字段被设置为 keyword 类型,并且 index 被设置为 false。这意呀着 images 字段的内容将不会被索引,因此无法通过该字段进行搜索。如果您的目的是存储图像链接但不通过它们进行搜索,这是合适的。但请注意,如果您希望在将来能够通过这些图像链接进行搜索,您应该将其 index 设置为 true
    • price 字段被正确地设置为 double 类型,适用于存储浮点数。
  3. 发送请求

    • 确保您正在向正确的 Elasticsearch 节点和端口发送请求。
    • 确保您有权限对索引进行写操作。
    • 如果您正在使用某种形式的客户端(如 curl、Postman、Elasticsearch 客户端库等)来发送此请求,请确保请求的格式正确(包括正确的 HTTP 头和可能的认证信息)。
  4. 响应检查

    • 检查 Elasticsearch 返回的响应以确保映射已成功应用。
    • 如果遇到错误,请仔细阅读错误消息以获取有关问题的更多信息。

以下是一个使用 curl 发送类似请求的示例(假设 Elasticsearch 正在本地运行,并且没有启用认证):

bash 复制代码
curl -X POST "http://localhost:9200/atguigu/_mapping" -H 'Content-Type: application/json' -d'
{
  "properties": {
    "title": {
      "type": "text",
      "index": true,
      "analyzer": "ik_max_word"
    },
    "images": {
      "type": "keyword",
      "index": false
    },
    "price": {
      "type": "double"
    }
  }
}'

请根据您的实际 Elasticsearch 配置(如主机名、端口和可能的认证要求)调整此命令。

2、查看映射关系

json 复制代码
GET /索引库名/_mapping
GET /atguigu/_mapping
相关推荐
鹏说大数据1 小时前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
AI逐月3 小时前
Git 彻底清除历史记录
大数据·git·elasticsearch
天远API4 小时前
Java后端进阶:处理多数据源聚合API —— 以天远小微企业报告为例
大数据·api
希艾席帝恩4 小时前
数字孪生如何重塑现代制造体系?
大数据·人工智能·数字孪生·数据可视化·数字化转型
武汉海翎光电4 小时前
从数据采集到智能决策:船舶传感器的技术跃迁之路
大数据·人工智能
下海fallsea5 小时前
美团没打赢的仗
大数据
无代码专家6 小时前
无代码:打破技术桎梏,重构企业数字化落地新范式
大数据·人工智能·重构
usrcnusrcn6 小时前
告别PoE管理盲区:有人物联网工业交换机如何以智能供电驱动工业未来
大数据·网络·人工智能·物联网·自动化
一缕猫毛7 小时前
Flink demo代码
java·大数据·flink
Hello.Reader7 小时前
Flink ML 基本概念Table API、Stage、Pipeline 与 Graph
大数据·python·flink