es partial update以及partial update內置樂觀鎖

全量替換:post

PUT /index/type/id,內存

建立文檔&替換文檔,就是同樣的語法,通常對應到應用程序中,每次的執行流程基本是這樣的:
(1)應用程序先發起一個get請求,獲取到document,展現到前臺界面,供用戶查看和修改
(2)用戶在前臺界面修改數據,發送到後臺
(3)後臺代碼,會將用戶修改的數據在內存中進行執行,而後封裝好修改後的全量數據
(4)而後發送PUT請求,到es中,進行全量替換
(5)es將老的document標記爲deleted,而後從新建立一個新的document文檔

 

一、什麼是partial update?get

post /index/type/id/_update 
{
   "doc": {
      "要修改的少數幾個field便可,不須要全量的數據"
   }
}test

看起來,好像就比較方便了,每次就傳遞少數幾個發生修改的field便可,不須要將全量的document數據發送過去後臺

 

 

 

二、圖解partial update實現原理以及其優勢原理

 

partial update,看起來很方便的操做,實際內部的原理是什麼樣子的,而後它的優勢是什麼date

三、演練partial update語法

PUT /test_index/test_type/10
{
  "test_field1": "test1",
  "test_field2": "test2"
}請求

POST /test_index/test_type/10/_update {   "doc": {     "test_field2": "updated test2"   } }

相關文章
相關標籤/搜索