ES-RestfulAPI

齐招
2023-12-01

目录

1、索引操作

创建索引库

查看索引库的信息

2、文档(document)操作

2.1、添加操作

2.1.1、添加文档

2.1.2、不指定id自动生成id

2.1.3、批量添加,注意:json不要换行

2.2、修改操作

2.2.1、根据id直接覆盖修改

2.2.2、指定修改某个field

2.2.3、批量修改

2.3、删除操作

2.3.1、删除文档

2.3.2、批量删除

3、查询操作

1、索引操作

fieldType详见:Field data types | Elasticsearch Guide [8.3] | Elastic

创建索引库

PUT person
{
  "settings": {
     "number_of_shards": 5,
     "number_of_replicas": 2
  }, 
  "mappings": {
    "properties": {
      "name":{
        "type": "text"
      },
      "age":{
        "type": "integer"
      },
      "sex":{
        "type": "integer"
      },
      "birth":{
        "type": "date"
      }
    }
  }
}

查看索引库的信息

GET person

删除索引

DELETE person

2、文档(document)操作

2.1、添加操作

2.1.1、添加文档

PUT person/_doc/1
{
  "name":"zhangsan",
  "age":18,
  "birth":"2022-11-11",
  "address":"杭州"
}

2.1.2、不指定id自动生成id

POST person/_doc
{
  "name":"lisi",
  "age":18,
  "birth":"2021-11-11",
  "address":"杭州"
}

2.1.3、批量添加,注意:json不要换行

PUT _bulk
{"index":{"_index":"person","_id":"4"}}
{"doc":{"name":"jack2"}}
{"index":{"_index":"person","_id":"3"}}
{"doc":{"name":"jack3"}}

查询

GET /person/_search
{
  "query": {
    "match_all": {}
  }
}

2.2、修改操作

2.2.1、根据id直接覆盖修改

POST /person/_doc/3
{
  "email":"11@qq.com"
}

2.2.2、指定修改某个field

POST person/_update/1
{
  "doc":{
    "name":"rose"
  }
}

2.2.3、批量修改

#批量修改
POST _bulk
{"update":{"_index":"person","_id":"1"}}
{"doc":{"name":"张三"}}
{"update":{"_index":"person","_id":"2"}}
{"doc":{"name":"张三1"}}
{"update":{"_index":"person","_id":"3"}}
{"doc":{"name":"张三2"}}

2.3、删除操作

2.3.1、删除文档

DELETE person/_doc/4

2.3.2、批量删除

PUT _bulk
{"delete":{"_index":"person","_id":"1"}}
{"delete":{"_index":"person","_id":"2"}}

3、查询操作

查询操作有很多种。太长换下篇博客专门写

 类似资料: