Elasticsearch 核心 API 全解析:功能分类+用法示例+生产实战

张开发
2026/4/19 13:21:57 15 分钟阅读

分享文章

Elasticsearch 核心 API 全解析:功能分类+用法示例+生产实战
Elasticsearch 核心 API 全解析功能分类用法示例生产实战前言一、核心概念Elasticsearch API 基础认知1.1 API 特点1.2 API 执行流程图1.3 API 分类按功能二、文档 API数据增删改查核心接口2.1 创建文档 API2.2 查询文档 API2.3 更新文档 API2.4 删除文档 API2.5 批量文档 API三、索引 API索引生命周期管理接口3.1 创建索引 API3.2 查询索引信息 API3.3 删除索引 API3.4 修改索引设置 API3.5 索引只读设置 API四、搜索 API检索与分析核心接口4.1 全文搜索 API4.2 高亮搜索 API4.3 聚合查询 API4.4 分页搜索 API4.5 精确查询 API五、集群 API集群状态与管理接口5.1 集群健康检查 API5.2 集群状态详情 API5.3 集群配置修改 API5.4 节点信息查询 API六、监控 API性能与状态监控接口6.1 节点统计监控 API6.2 索引统计 API6.3 磁盘使用情况 API6.4 索引列表查看 API七、高级 API企业级生产实用接口7.1 索引生命周期ILMAPI7.2 快照与恢复 API7.3 任务管理 API八、核心 API 分类速查表生产必备九、总结总结The Begin点点关注收藏不迷路前言ElasticsearchES作为分布式搜索引擎与数据分析引擎所有操作均通过 API 完成无论是索引管理、数据增删改查、集群监控、搜索分析都依赖一套标准化、易用性极强的 RESTful API。本文将系统梳理Elasticsearch 所有核心 API按功能分类讲解每个 API 都附带作用说明可直接运行的示例使用场景并搭配流程图、清晰序号与标准标题格式帮助你快速掌握 ES 最常用、最核心的 API 能力适用于 ES 7.x/8.x 全版本可直接用于学习、开发与运维。一、核心概念Elasticsearch API 基础认知1.1 API 特点基于RESTful 风格使用 HTTP 方法GET/PUT/POST/DELETE无状态、跨语言、跨平台任何语言均可调用返回格式统一为JSON支持集群、索引、文档、搜索、监控等全场景操作1.2 API 执行流程图客户端发送HTTP请求ES节点接收API请求请求路由与执行返回JSON格式结果客户端解析处理1.3 API 分类按功能文档 API数据增删改查索引 API索引创建、删除、配置、映射搜索 API查询、高亮、聚合、分页集群 API集群状态、节点信息、配置管理监控 API磁盘、内存、性能、健康检查高级 APIILM、快照、任务管理二、文档 API数据增删改查核心接口文档 API 是 ES最基础、最常用的 API负责单条/批量数据的写入、查询、更新、删除。2.1 创建文档 API标题格式文档API创建文档单条写入功能向指定索引写入一条数据请求方式PUT/POST示例POST/product/_doc/1{name:华为手机,price:3999,category:数码}2.2 查询文档 API标题格式文档API查询单条文档功能根据文档 ID 查询原始数据示例GET/product/_doc/12.3 更新文档 API标题格式文档API局部更新文档功能只修改文档部分字段不覆盖全量示例POST/product/_update/1{doc:{price:4299}}2.4 删除文档 API标题格式文档API删除单条文档功能根据 ID 删除一条数据示例DELETE/product/_doc/12.5 批量文档 API标题格式文档API批量增删改查功能一次请求执行多条操作提升性能示例POST/_bulk{create:{_index:product,_id:2}}{name:小米手表,price:1299}{update:{_index:product,_id:1}}{doc:{price:4299}}三、索引 API索引生命周期管理接口索引 API 负责索引的创建、删除、配置、映射、状态查看是 ES 结构管理核心。3.1 创建索引 API标题格式索引API创建索引含映射功能创建索引并指定字段类型、分词器、副本数等示例PUT/product{settings:{number_of_shards:1,number_of_replicas:0},mappings:{properties:{name:{type:text,analyzer:ik_max_word},price:{type:integer},category:{type:keyword}}}}3.2 查询索引信息 API标题格式索引API查看索引配置与映射功能查看索引的 settings、mappings示例GET/product3.3 删除索引 API标题格式索引API删除索引功能删除整个索引及所有数据示例DELETE/product3.4 修改索引设置 API标题格式索引API更新索引配置功能修改副本数、只读状态、刷新间隔等示例PUT/product/_settings{number_of_replicas:1}3.5 索引只读设置 API标题格式索引API设置索引为只读功能保护数据禁止写入/更新示例PUT/product/_settings{index.blocks.read_only:true}四、搜索 API检索与分析核心接口搜索 API 是 ES最核心价值体现支持全文检索、精确匹配、高亮、聚合、分页等。4.1 全文搜索 API标题格式搜索API全文检索查询功能根据关键词分词匹配最常用搜索示例GET/product/_search{query:{match:{name:手机}}}4.2 高亮搜索 API标题格式搜索API关键词高亮显示功能给匹配的关键词添加 HTML 标签示例GET/product/_search{query:{match:{name:手机}},highlight:{fields:{name:{}},pre_tags:[red],post_tags:[/red]}}4.3 聚合查询 API标题格式搜索API数据聚合统计功能分组、求和、平均值、最大值等数据分析示例按商品分类统计数量GET/product/_search{size:0,aggs:{group_by_category:{terms:{field:category}}}}4.4 分页搜索 API标题格式搜索API分页查询结果功能控制返回数据的起始位置与条数示例GET/product/_search{from:0,size:10,query:{match_all:{}}}4.5 精确查询 API标题格式搜索APIkeyword精确匹配功能不分词完全相等匹配示例GET/product/_search{query:{term:{category:数码}}}五、集群 API集群状态与管理接口集群 API 用于监控集群健康、节点状态、配置管理是运维必备工具。5.1 集群健康检查 API标题格式集群API查看集群健康状态功能查看集群是否正常green/yellow/red示例GET/_cluster/health5.2 集群状态详情 API标题格式集群API查看集群完整状态功能查看索引、分片、元数据等全部信息示例GET/_cluster/state5.3 集群配置修改 API标题格式集群API动态更新集群配置功能设置磁盘水位、并发数等示例PUT/_cluster/settings{persistent:{cluster.routing.allocation.disk.watermark.low:80%}}5.4 节点信息查询 API标题格式集群API查看节点信息功能查看节点 IP、配置、插件等示例GET/_nodes六、监控 API性能与状态监控接口用于查看 ES 运行状态、磁盘、内存、CPU、请求量等监控指标。6.1 节点统计监控 API标题格式监控API查看节点性能指标功能查看 JVM、磁盘、线程、IO 等示例GET/_nodes/stats6.2 索引统计 API标题格式监控API查看索引读写统计功能查看索引查询量、写入量、耗时示例GET/product/_stats6.3 磁盘使用情况 API标题格式监控API查看节点磁盘分配功能查看各节点磁盘使用率、剩余空间示例GET/_cat/allocation?v6.4 索引列表查看 API标题格式监控API查看所有索引列表功能简洁查看索引大小、文档数、状态示例GET/_cat/indices?v七、高级 API企业级生产实用接口7.1 索引生命周期ILMAPI标题格式高级API索引生命周期管理功能自动删除/滚动旧索引防止磁盘爆满示例PUT/_ilm/policy/delete_30d{policy:{phases:{delete:{min_age:30d,actions:{delete:{}}}}}}7.2 快照与恢复 API标题格式高级API数据备份与恢复功能集群数据备份与还原示例PUT/_snapshot/my_backup/snapshot_1{indices:product}7.3 任务管理 API标题格式高级API查看异步任务状态功能查看批量写入、重建索引等任务进度示例GET/_tasks八、核心 API 分类速查表生产必备分类核心 API主要功能文档POST /_doc、GET /_doc、DELETE /_doc数据增删改查索引PUT /index、DELETE /index、GET /_settings索引管理搜索GET /_search、highlight、aggs搜索、高亮、聚合集群GET /_cluster/health、PUT /_cluster/settings集群状态与配置监控GET /_cat/indices、GET /_nodes/stats状态与性能监控高级ILM、Snapshot、Bulk企业级运维九、总结Elasticsearch 所有能力均通过RESTful API开放核心 API 可分为六大类文档 API负责数据的写入、查询、更新、删除索引 API负责索引结构与配置管理搜索 API实现全文检索、高亮、聚合分析集群 API监控与管理集群状态监控 API查看性能、磁盘、运行状态高级 API支撑企业级备份、生命周期、任务管理熟练掌握这些核心 API即可完成 ES开发、查询、运维、监控、优化全流程工作是使用 Elasticsearch 必须掌握的基础能力。总结ES 采用RESTful API设计HTTP 方法JSON 数据完成所有操作核心 API 分为文档、索引、搜索、集群、监控、高级六大类生产环境最常用_search、_bulk、_cat/indices、_cluster/health所有 API 示例均可直接在 Kibana Dev Tools 运行The End点点关注收藏不迷路

更多文章