1. 索引的操作
GET请求:
GET /index :查询索引信息
POST请求:
POST /index/_search: 查询文档,可以在请求体中添加json字符串来代表查询条件
PUT请求:
PUT /index : 创建一个索引,需要在请求体中指定索引的信息
DELETE 请求:
DELETE /index: 删除跑路
2. 文档的操作
2.1 新建文档
自动生成id
#添加文档,自动生成id
POST /book/_doc
{
"name":"盘龙",
"author":"我吃西红柿",
"count":100000,
"on-sale":"2001-01-01",
"descr":"大小的血睛鬃毛狮,力大无穷的紫睛金毛猿,毁天灭地的九头蛇皇……"
}
手动指定id
#添加文档,手动指定id
PUT /book/_doc/1
{
"name":"红楼梦",
"author":"曹雪芹",
"count":10000000,
"on-sale":"2501-01-01",
"descr":"中国古代章回体长篇小说,中国古典四大名著之一,一般认为是清代作家曹雪芹所著。"
}
2.2 修改文档
覆盖式修改
#添加文档,手动指定id
PUT /book/_doc/1
{
"name":"红楼梦",
"author":"曹雪芹",
"count":1000444,
"on-sale":"2501-01-01",
"descr":"中国古代章回体长篇小说,小说以贾、史、王、薛四大家族的兴衰为背景,以富贵公子贾宝玉为视角,以贾宝玉与林黛玉、薛宝钗的爱情婚姻悲剧为主线,描绘了一批举止见识出于须眉之上的闺阁佳人的人生百态,展现了真正的人性美和悲剧美"
}
doc修改方式
#修改文档,使用doc方式
POST /book/_doc/1/_update
{
"doc":{
#指定需要修改的field和对应的值
"count":566666
}
}
2.3 删除文档
#根据id删除文档
DELETE /book/_doc/1
2.4 批量操作文档
批量处理可以一次请求中处理多个任务,使用_bulk
API进行:
POST _bulk
{"index":{"_index":"person", "_id":1}}
{"name":"ytao","blog":"公众号 ytao","remark":"https://ytao.top"}
{"update":{"_index":"person", "_id":1}}
{"doc":{"blog":"ytao's blog"}}
批量获取文档,使用_mget
API进行,通过一次指定多个文档 id,进行请求:
POST _mget
{
"docs":[
{
"_index": "person",
"_id": 1
},
{
"_index": "person",
"_id": 2
}
]
}
批量查询文档,使用_msearch
API进行,将多个查询整合到一个请求中:
GET /person/_msearch
{"index":"person"}
{"query":{"match":{"blog":"ytao's blog"}}}
{"index":"person"}
{"query":{"match":{"remark":"coder"}}}