Elasticsearch—索引库操作(增删查改)

ElasticsearchIndex就相当于MySQL中的数据库表

Mapping映射就类似表的结构。

因此我们想要向Elasticsearch中存储数据,必须先创建IndexMapping

1. Mapping映射属性

Mapping 是对索引库中文档的约束 ,常见的Mapping属性包括:

  • type:字段数据类型,常见的简单类型有:

    • 字符串:text (可分词的文本)、keyword(精确值,例如:品牌、国家、ip地址)

    • 数值:longintegershortbytedoublefloat

    • 布尔:boolean

    • 日期:date

    • 对象:object

  • index :是否创建索引,默认为**true**

  • analyzer:使用哪种分词器

  • properties:该字段的子字段


2. 索引库操作

访问 http://192.168.218.15:5601/ (自己虚拟机IP地址加5601端口 )登录Elastic控制台 ,点击Dev tools,记得先启动kibana和es容器


2.1 创建索引库和映射

2.1.1 基本语法

  • 请求方式:PUT

  • 请求路径:/索引库名,可以自定义

  • 请求参数:**Mapping**映射

格式:

XML 复制代码
JSON格式

PUT /索引库名称
{
  "mappings": {
    "properties": {
      "字段名":{
        "type": "text",
        "analyzer": "ik_smart"
      },
      "字段名2":{
        "type": "keyword",
        "index": "false"
      },
      "字段名3":{
        "properties": {
          "子字段": {
            "type": "keyword"
          }
        }
      },
    }
}

示例:

XML 复制代码
 PUT /duolai
{
  "mappings": {
    "properties": {
      "address":{
        "type": "text",
        "analyzer": "ik_smart"
      },
      "phone":{
        "type": "keyword",
        "index": "false"
      },
      "user":{
        "properties": {
          "lastName": {
            "type": "keyword"
          }
        }
      }
    }
  }
}

2.1.2 测试:


2.2 查询索引库

2.2.1 基本语法

  • 请求方式:GET

  • 请求路径:/索引库名

  • 请求参数:无

格式

XML 复制代码
GET /索引库名

2.2.2 测试


2.3 删除索引库

2.3.1 基本语法

  • 请求方式:DELETE

  • 请求路径:/索引库名

  • 请求参数:无

格式:

XML 复制代码
DELETE /索引库名

2.3.2 测试


2.4 修改索引库

索引 库和Mapping 一旦创建无法修改 ,但是可以添加新的字段。

简单来说就是不能修改已有的字段 ,但可以添加新的字段

2.4.1 基本语法

XML 复制代码
PUT /索引库名/_mapping
{
  "properties": {
    "新字段名":{
      "type": "integer"
    }
  }
}

示例:

XML 复制代码
PUT /duolai/_mapping
{
  "properties": {
    "age":{
      "type": "integer"
    }
  }
}

2.4.2 测试

查询一下索引库,看看字段是否添加

3. 总结

索引库操作有哪些?

  • 创建索引库:PUT /索引库名

  • 查询索引库:GET /索引库名

  • 删除索引库:DELETE /索引库名

  • 修改索引库,添加字段:PUT /索引库名/_mapping

相关推荐
Elasticsearch8 小时前
如何使用 Agent Builder 排查 Kubernetes Pod 重启和 OOMKilled 事件
elasticsearch
Elasticsearch1 天前
通用表达式语言 ( CEL ): CEL 输入如何改进 Elastic Agent 集成中的数据收集
elasticsearch
武子康1 天前
大数据-236 离线数仓 - 会员指标验证、DataX 导出与广告业务 ODS/DWD/ADS 全流程
大数据·后端·apache hive
武子康2 天前
大数据-235 离线数仓 - 实战:Flume+HDFS+Hive 搭建 ODS/DWD/DWS/ADS 会员分析链路
大数据·后端·apache hive
DianSan_ERP3 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
够快云库3 天前
能源行业非结构化数据治理实战:从数据沼泽到智能资产
大数据·人工智能·机器学习·企业文件安全
AI周红伟3 天前
周红伟:智能体全栈构建实操:OpenClaw部署+Agent Skills+Seedance+RAG从入门到实战
大数据·人工智能·大模型·智能体
B站计算机毕业设计超人3 天前
计算机毕业设计Django+Vue.js高考推荐系统 高考可视化 大数据毕业设计(源码+LW文档+PPT+详细讲解)
大数据·vue.js·hadoop·django·毕业设计·课程设计·推荐算法
计算机程序猿学长3 天前
大数据毕业设计-基于django的音乐网站数据分析管理系统的设计与实现(源码+LW+部署文档+全bao+远程调试+代码讲解等)
大数据·django·课程设计
B站计算机毕业设计超人3 天前
计算机毕业设计Django+Vue.js音乐推荐系统 音乐可视化 大数据毕业设计 (源码+文档+PPT+讲解)
大数据·vue.js·hadoop·python·spark·django·课程设计