[英]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.