es中的端点

news/2025/9/20 12:11:08/文章来源:https://www.cnblogs.com/mingcore/p/19102238

_doc端点

用于对单个****文档的crud操作(如创建、获取、更新、删除单个文档),常见用法如下

向指定索引添加新文档:

POST /索引名/_doc

ES会自动生成唯一文档ID,例:POST /books/_doc → 向 books索引添加新文档。

根据文档ID创建/更新文档:

PUT /索引名/_doc/文档ID

若文档ID不存在,则创建;若已存在,则全量替换文档内容。例:PUT /books/_doc/100 → 创建或替换ID为100的文档。

根据文档ID获取单个文档:

GET /索引名/_doc/文档ID

例:GET /books/_doc/100 → 获取ID为100的文档详情。

根据文档ID删除文档:

DELETE /索引名/_doc/文档ID

例:DELETE /books/_doc/100 → 删除ID为100的文档。

_search端点

用于搜索操作,可以对一个或多个索引执行查询,并返回匹配的文档,常见用法如下

基础搜索

GET /索引名/_search

例:GET /books/_search → 搜索 books 索引中的所有文档(默认返回 10 条)。

带查询条件的搜索:

在请求体中通过 JSON 定义查询条件,如下所示,表示在 books 索引中搜索 title 包含 "elasticsearch" 的文档。

GET /books/_search
{"query": {"match": { "title": "elasticsearch" }}
}

多索引搜索:

同时搜索多个索引,如下所示

GET /索引1,索引2/_search 

所有索引搜索:

搜索所有索引,如下所示,不推荐使用,性能较差。

GET /_all/_search 或 GET /*/_search

_analyze端点

用于测试和调试文本分析过程。通过这个端点,你可以查看指定文本经过特定分析器(analyzer)处理后的分词结果;测试自定义分析器的效果;验证分词器(tokenizer)、过滤器(filter)等组件的组合效果。

基本格式

GET _analyze
{"analyzer": "指定分析器名称","text": "需要分析的文本内容"
}

_bulk端点

用于高效执行批量索引、更新或删除操作。_bulk请求格式基本结构如下:

{"action": {"metadata"}}
{"data"}
{"action": {"metadata"}}
{"data"}
...

其中:

  • action 可以是 indexcreateupdatedelete。
  • metadata 包含索引名称、文档 ID 等信息
  • data 是文档的内容(delete 操作不需要这一行)

常见写法

不指定元数据:这里既不指定 _index,也不指定 _id,此时会由Es自动生成文档ID,同时要求必须在请求的URL中指定默认索引,否则会报错。

POST /music/_bulk
{"index": {}}
{"name": "张三", "age":"18"}

指定元数据:指定文档ID和索引。

注意:_index和_id是可选参数。

_index 代表索引值,如果元数据中不指定 _index,则用请求的URL中指定的默认索引;如果指定了_index,即使请求URL中指定了默认索引,也还是以 _index 中指定的索引为准。

_id 代表文档ID,如果元数据中不指定 _id,则使用Es自动生成文档ID;如果指定 _id,则会判断 _id 的值在文档中是否存在,如果存在则更新,如果不存在则创建新文档。

POST /_bulk
{"index": {"_index": "products", "_id": "1"}}
{"name": "张三", "age":"18"}POST /music/_bulk
{"index": {"_index": "products", "_id": "1"}}  //此时index还是products,products会覆盖music
{"name": "张三", "age":"18"}

多种数据类型操作

POST /_bulk
{"index": {"_index": "products", "_id": "1"}}
{"name": "iPhone", "price": 999, "category": "electronics"}
{"create": {"_index": "products", "_id": "2"}}
{"name": "MacBook", "price": 1999, "category": "electronics"}
{"update": {"_index": "products", "_id": "1"}}
{"doc": {"price": 899}}
{"delete": {"_index": "products", "_id": "2"}}

index:如果文档不存在则创建,存在则更新(全量替换)。

create:仅在文档不存在时创建,存在则失败。

update:部分更新文档,需要使用 doc 字段指定要更新的字段。

delete:删除指定文档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/908318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解码C语言宏

预处理概述 基本概念 预处理是C语言编译过程的第一步,所有以#开头的指令都由预处理器处理,这些指令不属于C语言语法本身。 预处理指令类型头文件包含:#include 宏定义:#define 宏取消:#undef 条件编译:#if, #ifd…

es中的索引

索引的概念 在ES中,索引(Index) 是核心的数据存储和检索单元,其本质是一组结构相似的文档(Document)的集合,同时包含了文档的元数据(如字段类型、分词器配置)和检索所需的 “倒排索引” 结构。ES软件的索引类…

es中的数据类型

字符串 文本(Text)作用:适用于全文搜索的文本字段,例如文章内容、电子邮件正文、产品描述等长文本。 特点:ES会对文本内容进行分词处理,将字符串转换为单个术语的列表,支持全文搜索和模糊查询。但通常不用于排序或…

防御安全播客第214期:数据泄露与漏洞攻防实战

本期播客深入探讨GDPR隐私规则与安全的平衡、伊朗黑客攻击美国大学数据泄露事件、Guccifer 2.0身份揭秘、Orbitz支付卡盗窃案及SamSam勒索软件攻击亚特兰大事件,并分析网络犯罪分子最常利用的顶级漏洞。媒体链接音频源…

windows使用kibana

下载Kibana安装包 https://www.elastic.co/downloads/past-releases#kibana(如果知道版本号也可以直接将最后的kibana换成对应的版本号)上图中两个下拉框分别选择对应的产品和版本,选择好之后点击右边蓝色的Downloa…

VIVADO的IP核 DDS快速采用——生成正弦波,线性调频波

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

03作业

03作业 一、关于static修饰符的问题适合用static修饰的方法:工具类方法(如Math类的abs()、StringUtils的isEmpty()) 工厂方法(用于创建对象的方法) 单例模式的getInstance()方法 与类本身相关而非实例相关的操作不…

软工作业个人项目

这个作业属于哪个课程 计科23级12班这个作业要求在哪里 [个人项目-作业](个人项目 - 作业 - 计科23级12班 - 班级博客 - 博客园)这个作业的目标 设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改…

rapidxml中接口函数

引言 RapidXML 是一个轻量级 XML 解析库,核心接口围绕 文档解析、节点操作、属性操作 三大类展开。(基于 rapidxml.hpp 核心头文件) 一、文档操作(xml_document<> 类) xml_document<> 是 XML 文档的核心…

YOLO进阶提升 6模型训练与测试

进阶提升 6模型训练与测试 核心概念训练过程:通过迭代(epoch)不断优化损失函数,直至收敛。 Checkpoints(模型权重保存点):训练中定期保存模型参数,用于恢复或测试。 测试/推理(Inference):利用训练好的模型…

深入解析:C语言---判断语句

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

vue基于Springboot框架网上电子书店商城好书推荐管理系统 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

YOLO进阶提升 4训练准备与数据处理

进阶提升 4训练准备与数据处理 核心概念参数配置:训练前需指定数据路径和预训练模型权重。 迁移学习:利用已有的预训练模型作为初始化,提高收敛速度和效果。 数据加载(DataLoader/Generator):分批按需读取,避免…

YOLO进阶提升 5标注与配置

进阶提升 5标注与配置 核心概念数据标注 (Labeling):通过工具(如 LabelMe)对图像中的目标进行框选或分割,生成 JSON 格式的标注文件。 配置文件 (Config):定义模型结构、类别数、路径等关键信息,使训练过程与任…

【学术会议前沿信息|科研必备】IEEE/EI/Scopus三检护航!人工智能+自动化控制+人文社科+遥感+地理信息+视觉领域国际会议征稿启动,硕博生速来! - 教程

【学术会议前沿信息|科研必备】IEEE/EI/Scopus三检护航!人工智能+自动化控制+人文社科+遥感+地理信息+视觉领域国际会议征稿启动,硕博生速来! - 教程2025-09-20 11:43 tlnshuju 阅读(0) 评论(0) 收藏 举报pre {…

YOLO进阶提升 3YOLOv4 改进

进阶提升 YOLOv4 改进 核心概念YOLOv4:YOLO 系列的重要升级版本,目标是在保证高精度的同时,让普通 GPU 用户也能训练。 迁移学习:利用在大规模数据集上训练好的模型参数,作为新任务的初始化,提高小数据集上的表…

解码C语言位字段

一、位字段的定义 位字段允许在结构体中按 位(bit) 为单位分配成员空间,用于紧凑存储布尔标志或小范围整数值,节省内存。常用于硬件寄存器操作、协议数据解析等场景。 二、位字段的语法 1. 基本声明 struct 结构体…

Sql Server 多层嵌套事务的执行结果

在标准的事务模型中,嵌套的内部事务的“提交”在外层事务失败时是无效的。所有操作,包括内部事务的操作,都将被回滚。数据库事务处理的核心概念:在标准的事务模型中,嵌套的内部事务的“提交”在外层事务失败时是无…

深入解析:数据库入门实战版

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

es入门

es的概念 Es,全称ElasticSearch,是一个开源的分布式搜索引擎,底层基于 Lucene 实现。 es和传统db数据库的对应关系传统Db ElasticSearch数据库(database) 索引(index)表(tables) 类型(types)行(rows) 文档(documents…