知识点 1 :文档的基本CRUD与批量操作
PUT/GET/POST 索引/type/id
{jsonBody}
type:默认为_doc
id:可以指定也可以自动生成
jsonBody:请求体
Create 一种文档
POST 索引名/_doc/id?op_type=操作类型
Create 支持两种方式
• 第一:id可选,不传会自动生成
• 第二:操作类型默认index可选index/create
//自动生成id
POST users/_doc
{
"user":"tyw",
"post_date":"2020-07-27T01:35:26",
"message":"try kibana"
}
//指定id create创建
POST users/_doc/1?op_type=create
{
"user":"tyw15",
"post_date":"2020-07-27T01:35:26",
"message":"try elasticsearch"
}
//id重复报错 create创建
POST users/_doc/1?op_type=create
{
"user":"tyw16",
"post_date":"2020-07-27T01:35:26",
"message":"try elasticsearch"
}
Index 文档与Create 区别,当文档不存在,就索引新文档,否则现有文档会被删除,新文档被索引。版本信息+1
POST users/_doc/1?op_type=index
{
"user":"tyw17",
"post_date":"2020-07-27T01:35:26",
"message":"try elasticsearch"
}
Get 一个文档
仅需执行 GET 索引/_doc/id
,就可以看到文档信息
//通过id获取文档
GET users/_doc/1
Update 文档
Update不会删除源文档,且实现真正数据更新
Update 采用 POST,并在请求中增加“doc”,在把相应文档提供在HTTP的“body”中
POST users/_update/1/
{
"doc":{
"message":"try elasticsearch update"
}
}
Bulk API
通过一次 REST API调用,执行多次不同索引操作
作用:
• 单条操作失败,不会影响其他操作
• 返回结果中包括每一条操作执行结果
批量读取 - mget
提供一系列的文档 ID,请求一次 REST API 时,即可返回所有文档信息
批量查询 - msearch
常见错误返回