您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。