当前位置: 首页 > news >正文

elasticsearch学习(五)文档CRUD

目录

  • 上一篇文章
  • 文档CRUD
    • 创建索引
    • 查看索引字段mapping
    • 更新mapping
    • 删除索引
    • 测试索引是否存在
    • 查看索引字段结构
    • 删除索引
  • 文档命令
    • 创建文档
      • Index
      • Create
        • Create与Index的区别
    • 更新文档
    • 删除文档
    • 查询文档
      • 简单查询语法

上一篇文章

elasticsearch学习(四)kibana安装
https://blog.csdn.net/github_36801273/article/details/151076329?spm=1011.2124.3001.6209

文档CRUD

创建索引

PUT /my-index
{"mappings": {"properties": {"testFieldA": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}},"testFieldB": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}}}}
}

mapping的部分不是必须的,可以通过先创建索引,然后写入数据的方式自动生成mapping

查看索引字段mapping

GET /my-index/_mapping{"my-index": {"mappings": {"properties": {"testFieldA": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}},"testFieldB": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}}}}}
}

更新mapping

POST  /my-index/_mapping
{"properties": {"testFieldC": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}},"testFieldB": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 512}}}}
}

只能新增和更新字段,不能删除字段,删除字段用reindex

删除索引

DELETE /my-index

测试索引是否存在

HEAD /my-index

查看索引字段结构

GET /my-index/_mapping

删除索引

DELETE /my-index

文档命令

创建文档

Index

如果ID不存在,则创建新的,否则删除旧的再创建新的,增加版本号

POST /my-index/_doc
{"id": "park_rocky-mountain","title": "Rocky Mountain","description": "Bisected north to south by the Continental Divide, this portion of the Rockies has ecosystems varying from over 150 riparian lakes to montane and subalpine forests to treeless alpine tundra."
}

Create

// 不指定ID(系统自动生成)
POST /my-index/_doc
{"testFieldA":"testA1","testFieldB":"testB1"
}// 指定ID
POST /my-index/_doc/2
{"testFieldA":"testA2","testFieldB":"testB2"
}
Create与Index的区别

create的文档ID如果已存在,会报失败
index的文档ID不存在,会新建,否则会把原来的删除了再增加

更新文档

POST /my-index/_update/2
{"doc":{"testFieldA":"updateTestA2"} 
}

删除文档

DELETE /my-index/_doc/2

查询文档

支持两种方式:
1 url查询,在url路径中使用查询参数
2 用DSL(Query Domain Specific Language)

简单查询语法

api作用
/_search查询集群上所有索引
/{index_name}/_search查询指定索引
/{index_name1},{index_name2},{…}/_search查询多个指定索引
/{index_prex}*/_search查询以{index_prex}为开头的索引
// 指定ID查询
GET /my-index/_doc/2// 查询全量数据
GET /my-index/_search// 查询my开头的索引数据
GET /my*/_search// URL查询
GET /my-index/_search?q=testFieldA:updateTestA2// DSL查询
GET /my-index/_search -H 'Content-Type:application/json' -d
{"query":{"match":{"testFieldA":"updateTestA2"}}
}
http://www.xdnf.cn/news/1458091.html

相关文章:

  • 基于脚手架微服务的视频点播系统-界面布局部分(二):用户界面及系统管理界面布局
  • 02-ideal2025 Ultimate版安装教程
  • SPI flash挂载fatfs文件系统
  • 什么是静态住宅IP 跨境电商为什么要用静态住宅IP
  • More Effective C++ 条款28:智能指针
  • 稠密矩阵和稀疏矩阵的对比
  • 神马 M21 31T 矿机解析:性能、规格与市场应用
  • Python多序列同时迭代完全指南:从基础到高并发系统实战
  • vcruntime140_1.dll缺失?5个高效解决方法
  • 手机秒变全栈IDE:Claude Code UI的深度体验
  • SpringBoot实现国际化(多语言)配置
  • MySQL 8.0 主从复制原理分析与实战
  • 深入解析Java HashCode计算原理 少看大错特错的面试题
  • 多线程——线程状态
  • 并发编程——17 CPU缓存架构详解高性能内存队列Disruptor实战
  • ResNet(残差网络)-彻底改变深度神经网络的训练方式
  • linux——自定义协议
  • 多Agent协作案例:用AutoGen实现“写代码+测Bug”的自动开发流程
  • 秒店功能更新:多维度优化升级,助力商家经营
  • 当 LLM 遇上真实世界:MCP-Universe 如何撕开大模型 “工具能力” 的伪装?
  • 记录相机触发相关
  • 机器学习入门,第一个MCP示例
  • (D题|矿井突水水流漫延模型与逃生方案)2025年高教杯全国大学生数学建模国赛解题思路|完整代码论文集合
  • 生成式引擎优化(GEO):数字营销新标配,企业如何抢占AI搜索流量高地?
  • Trae + MCP : 一键生成专业封面的高阶玩法——自定义插件、微服务编排与性能调优
  • 设计模式六大原则2-里氏替换原则
  • Linux —— 环境变量
  • mysql中find_in_set()函数的使用, ancestors字段,树形查询
  • AI视频画质提升效果实用指南:提升清晰度的完整路径
  • [论文阅读] 软件工程 | REST API模糊测试的“标准化革命”——WFC与WFD如何破解行业三大痛点