这篇文章将为大家详细讲解有关Elasticsearch文档基本操作有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
// 创建文档,自动生成 id POST /<索引名>/_doc { "foo": "bar" }
// 创建文档并指定 id,id 已存在则报错 PUT /<索引名>/_doc/<id>?op_type=create { "foo": "bar" }
// 创建文档并指定 id,id 已存在则报错 PUT /<索引名>/_create/<id> { "foo": "bar" }
GET /<索引名>/_doc/<id>
修改整个文档
PUT /<索引名>/_doc/<id> { "aaa": "bbb" }
增加字段
POST /<索引名>/_update/<id> { "doc": { "newFoo": "newBar" } }
无论哪种修改,文档的 _version 字段都会增加 1。
ES 的 bulk API 指的是允许请求者在一次操作中干不同的事的 API。例如,在一次请求中删除 id 为 qqq 的文档并创建 id 为 www 的文档,且新文档的内容为 { "dd": "ff" }
。
bulk API 支持的操作有:
Index
Create
Update
Delete
也就是,支持各类写操作,不支持在同一个请求中读和写。
单条操作失败不影响其他,返回结果包含每一个操作的执行结果。
POST /_bulk { "index": { "_index": "myindex", "_id": "3" } } { "ccc", "mmm" } { "delete": { "_index": "myindex", "_id": "10" } }
上面的操作中,先在索引 myindex 中创建一个 id 为 3 的文档,内容为第 2 行,然后删除索引 myindex 中 id 为 10 的文档。
由于进行了 2 个操作,所以 ResponseBody 是包含 2 个元素的 list,对应每个操作的结果。
GET /_mget { "docs": [ { "_index": "myindex", "_id": "3" }, { "_index": "index22", "_id": "234" }, ] }
返回的 ResponseBody 形如:
{ "docs": [] // 请求几个文档,这里就是几个 }
POST /<索引名>/_msearch {} { "query": { "match_all": {} }, "size": 1 } { "index": "index333" } { "query": { "match_all": {} }, "size": 2 }
关于“Elasticsearch文档基本操作有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。