elasticesearch 第3.1章 HTTP操作-索引操作 elasticesearch 第3.1章 HTTP操作-索引操作

4小时前

一、创建索引

对比关系型数据库,创建索引就等同于创建数据库。

在 Postman 中,向 ES 服务器发 PUT 请求:

http://127.0.0.1:9200/shopping

请求后,服务器返回响应:

https://cyfb.lulublog.cn/images/3/2026/05/YCt3UuIslEFkccT7qKTXmxTwjjK7Zi.png

{
 "acknowledged"【响应结果】: true, # true操作成功
 "shards_acknowledged"【分片结果】: true, # 分片操作成功
 "index"【索引名称】: "shopping"
}

注意:创建索引库的分片数默认 1 片,在 7.0.0 之前的 Elasticsearch 版本中,默认 5 片。

如果重复添加索引,会返回错误信息

https://cyfb.lulublog.cn/images/3/2026/05/vmkxwaZXpMZXM77cxQNrM1kxrt1ZAN.png

二、查看所有索引

在 Postman 中,向 ES 服务器发 GET 请求:

http://127.0.0.1:9200/_cat/indices?v

这里请求路径中的 _cat 表示查看的意思,indices 表示索引,所以整体含义就是查看当前 ES 服务器中的所有索引,就好像 MySQL 中的 show tables 的感觉,服务器响应结果如下:

https://cyfb.lulublog.cn/images/3/2026/05/VPM4pIHmLlOqiLolPo6O8LpvVLMLMP.png

  • health:当前服务器健康状态——green(集群完整) yellow(单点正常、集群不完整) red(单点不正常)

  • status:索引打开、关闭状态

  • index:索引名

  • uuid:索引统一编号

  • pri:主分片数量

  • rep:副本数量

  • docs.count:可用文档数量

  • docs.deleted:文档删除状态(逻辑删除)

  • store.size:主分片和副分片整体占空间大小

  • pri.store.size:主分片占空间大小

三、查看单个索引

在 Postman 中,向 ES 服务器发 GET 请求:

http://127.0.0.1:9200/shopping

查看索引向 ES 服务器发送的请求路径和创建索引是一致的。但是 HTTP 方法不一致。这里可以体会一下 RESTful 的意义。

请求后,服务器响应结果如下:

https://cyfb.lulublog.cn/images/3/2026/05/t1l0fVVe5TVbP51PIfFEf6VbvVZb6X.png

{
 "shopping"【索引名】: {    
   "aliases"【别名】: {},
   "mappings"【映射】: {},
   "settings"【设置】: {
     "index"【设置 - 索引】: {
       "creation_date"【设置 - 索引 - 创建时间】: "1614265373911",
       "number_of_shards"【设置 - 索引 - 主分片数量】: "1",
       "number_of_replicas"【设置 - 索引 - 副分片数量】: "1",
       "uuid"【设置 - 索引 - 唯一标识】: "_kV8Bd2wTNG9ZdCTG9O9Eg",
       "version"【设置 - 索引 - 版本】: {
         "created": "7080099"
       },
       "provided_name"【设置 - 索引 - 名称】: "shopping"
     }
   }
 }
}

四、删除索引

在 Postman 中,向 ES 服务器发 DELETE 请求:

http://127.0.0.1:9200/shopping

https://cyfb.lulublog.cn/images/3/2026/05/e1jBk1oJTTzEFkbzR15r9Vk3reoo1E.png

重新访问索引时,服务器返回响应:索引不存在

https://cyfb.lulublog.cn/images/3/2026/05/RPLkpKmmqXPllYLmpu1AYyy9XYMEkM.png

阅读 9