Elasticsearch 基本语法使用

1、创建索引

1.1 基本语法

java 复制代码
PUT <index_name>
  • index_name:索引名称

1.2 索引命名规范

  • 以小写英文字母命名索引
  • 不要使用 驼峰 或者 帕斯卡 命名法则
  • 如过出现多个单词的索引名称,以全小写 + 下划线分隔的方式:如 my_index。

1.3 索引的基本组成

  • alias:即 索引别名,参考: ES中索引别名(alias)的到底有什么用
  • settings:索引设置,常见设置如分片和副本的数量等。
  • mapping:即映射,定义了索引中包含哪些字段,以及字段的类型、长度、分词器等。

2、删除索引

2.1 基本语法

java 复制代码
DELETE /<index_name>
  • index_name:索引名称

2.2 判断索引是否存在

java 复制代码
HEAD <index_name>

3、索引的不可变性

3.1 哪些参数不可变

ES 索引创建成功之后,索引名称、主分片数量、字段类型、分词器等参数将不可被修改

3.2 有什么影响

造成项目后期难以维护和扩展。

3.3 如何解决

  • 运行时字段
  • 索引别名
  • Reindex

4、索引的查询

4.1 查询特定索引

基本语法

java 复制代码
GET /<index_name>/_search 
GET /_search 

可选参数

  • size:单次查询多少条文档,默认为 10
  • from:起始文档偏移量。需要为非负数,默认为0
  • timeout: 指定等待每个分片响应的时间段。如果在超时到期之前未收到响应,则请求失败并返回错误。默认为无超时。

4.2 查询集群中所有索引

java 复制代码
_cat/indices

5、索引文档

将 JSON 文档添加到指定的数据流或索引并使其可被检索。如果目标是索引并且文档已经存在,则请求更新文档并增加其版本号。

基本语法 ★

json 复制代码
PUT /<target>/_doc/<_id>

PUT /<target>/_create/<_id>

POST /<target>/_create/<_id>

案例

索引一条 _id 为 1 的文档,并为其添加 test_field 和 test_title 两个字段

json 复制代码
PUT test_index/_doc/1?op_type=index
{
  "name":"赵四",
  "age":18
}

6、查询文档

5.2.1 基本语法

json 复制代码
GET <index>/_doc/<_id>

5.2.2 案例

json 复制代码
GET product/_doc/1

5.2.3 _source API

使用 _source API 可以打开或者关闭源数据字段,true 为打开,false 为关闭,默认为 true。

json 复制代码
GET <index>/_doc/<_id>?_source=false

当然也可以只查看 _source 字段,而不查看任何 mata data。

json 复制代码
GET <index>/_source/<_id>

7、删除文档

删除索引中指定 id 的文档

json 复制代码
DELETE /<index>/_doc/<_id>

比如:

json 复制代码
DELETE product/_doc/1

8、更新文档

json 复制代码
POST /<index>/_update/<_id>
{
  "doc": {
    "<field_name>": "<field_value>"
  }
}

注意 :7.x 及之前版本的语法 POST test/_doc/1/_update已不再支持

相关推荐
greatofdream3 小时前
git rebase时如何解决merge节点冲突问题
大数据·git·elasticsearch
SelectDB技术团队13 小时前
冷热分层从建到验:Storage Policy 创建、表级与分区级绑定、SHOW TABLETS 验证的完整命令
大数据·数据库·elasticsearch·搜索引擎·数据分析·apache doris·冷热分层
Sayai16 小时前
DataX 离线数据同步实战:Elasticsearch 数据批量导出 MySQL(作业配置、并发调优与定时同步平台化设计)
大数据·mysql·elasticsearch·datax·数据同步
Elastic 中国社区官方博客17 小时前
Kibana:创建包含时间序列图表的仪表板
大数据·elasticsearch·搜索引擎·信息可视化·全文检索·kibana
Elastic 中国社区官方博客20 小时前
Elastic 线下 Meetup 将于 2026 年 12 月 19 号下午在西安举行
大数据·数据库·elasticsearch·搜索引擎·ai·数据分析·全文检索
SelectDB技术团队21 小时前
存算分离建表与 Storage Vault 配置全流程:日志集群从建库到弹性扩缩容的命令链
elasticsearch·日志·数据湖·apache doris·日志数据·数据库选型·多模湖仓
今年下半年1 天前
【Spring Boot】集成 Elasticsearch:中文分词与关键字高亮对接文档
spring boot·elasticsearch·中文分词
jonyleek1 天前
JVS私有化文档系统运维避坑指南:5大断点检测与加固实践(K8S+MinIO+ES)
elasticsearch·minio·clamav·jvs·k8s运维·文档系统·权限同步
骑着蜗牛撵大象3271 天前
CentOS 7 单机拉起 Elasticsearch 7.17.29:从内核报错到公网可达的全链路记录
elasticsearch·centos·jenkins·restful·内核调优·公网部署
打工仔折腾 AI1 天前
CentOS 7 单机部署 Elasticsearch 7.17.29:启动报错排查与 CRUD 验证
人工智能·后端·python·elasticsearch·性能优化·centos·jenkins