簡體   English   中英

ElasticSearch查詢結果是否已緩存?

[英]Are ElasticSearch query results cached?

我正在使用ElasticSearch 2.3和ASP.NET Web應用程序。 我正在使用C# HttpClient通過其REST API調用ElasticSearch。

嘗試將新值添加到數組時遇到問題。

本質上是我正在執行的查詢:

步驟1:取得備忘

POST /notes/note/_search
{
  "query" : {
    "term" : { "_id" : 1 }
  }
}

只有一個便箋,結果顯示該便箋包含一個空的附件數組

步驟2:更新注釋附件數組

POST: /notes/note/1/_update
{
   "doc" : { 
      "Attachments" : [ "Test" ]
   }
}

步驟3:再次取得記錄

POST: /notes/note/_search
{
  "query" : {
    "term" : { "_id" : 1 }
  }
}

結果顯示,筆記仍包含一個空的Attachments數組

但是,當我從Kibana搜索/ MatchAll時,我看到Attachments數組已更新為新項目。 但是,從ASP.NET運行所有這些步驟時,在更新后立即搜索更新的文檔時,我沒有得到更新的文檔。

這是某種緩存引起的嗎?

執行更新后,我該怎么做才能使文檔保持一致狀態?

任何幫助表示贊賞! 謝謝

可能發生的是刷新尚未到來。 比您能夠通過ID進行獲取,但該更新尚不可用搜索。 因此,在執行搜索之前強制刷新。 插入許多文檔時,這確實會對性能產生影響。 但是對於測試,您應該沒問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM