0
我們看到添加到索引的錯誤,並且當我們詢問/ _cat/shards時,我們看到了這一點。elasticsearch:爲什麼碎片大小在/ _cat/shards中丟失
羣集狀態是綠色的,到目前爲止我們沒有看到其他問題。
下面是什麼意思?
我們看到添加到索引的錯誤,並且當我們詢問/ _cat/shards時,我們看到了這一點。elasticsearch:爲什麼碎片大小在/ _cat/shards中丟失
羣集狀態是綠色的,到目前爲止我們沒有看到其他問題。
下面是什麼意思?
OK,我們可以看到這是爲什麼。我們不得不在日誌中查找。 (羣集狀態是綠色的,但羣集被炸燬......奇怪的是我們。)
問題是fielddata和內存。我們認爲,通過轉向具有%100更多內存的節點,我們可以解決這個問題,但事實證明情況並非如此。
(我們有一些代碼來監視斷路器,但該代碼尚未部署。)
[node-5a] [FIELDDATA] New used memory 641586695 [611.8mb] from field [PostalCode] would be lar
ger than configured breaker: 622775500 [593.9mb], breaking
[2015-11-16 18:22:33,777][DEBUG][action.search.type ] [node-5a] [index_main][1], node[Kzhhh3XlRXmQpsSOEmNENw], [R], s[STARTED]:Failed to execute [[email protected]] lastShard [true]
我們知道,真正的解決辦法是去doc_values。這也已被編碼(但尚未部署)。
底線:另一天,ES又一次災難性的數據丟失。 (好東西,我們在這之後使用SQL Server。)
產品建議:當斷路器跳閘時,或許集羣狀態應該是綠色以外的東西?我們長期監測集羣狀態,最近才瞭解斷路器(並且必須編寫相當數量的代碼來管理斷路器)。
其他日誌信息
[2015-11-16 18:22:33,769][WARN ][indices.breaker ] [node-5a] [FIE
LDDATA] New used memory 641586695 [611.8mb] from field [PostalCode] would be larger than configured breaker: 622775500 [593.9mb], breaking
[2015-11-16 18:22:33,777][DEBUG][action.search.type ] [node-5a] [index_v5][1], node[Kzhhh3XlRXmQpsSOEmNENw], [R], s[STARTED]:
Failed to execute [[email protected]] lastS
hard [true]
org.elasticsearch.search.query.QueryPhaseExecutionException: [index_v5_case_4905
7_2015_11_09][1]: query[filtered(+Hash:26444)->cache(_type:shipment)],from[0],si
ze[20],sort[<custom:"PostalCode": org.elasticsearch.index.fielddata.fieldcompara
[email protected]>!]: Query Failed [Failed to execute m
ain query]
at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:163
...
Caused by: org.elasticsearch.common.breaker.CircuitBreakingException: [FIELDDATA] Data too large, data for [PostalCode] would be larger than limit of [622775500
爲什麼 「災難性數據丟失」?你在哪裏看到? –
@AndreiStefan從我們可以看出,數據是歷史。 1)我們的代碼在通信時發生錯誤; 2)在ES日誌中存在類似上述的錯誤(回答擴展); 3)分片統計信息(在OP中顯示)嚴重錯誤。我還不瞭解有關ES的所有信息(但我正在取得巨大而快速的進展),但是當ES節點在客戶打電話時拋出錯誤,並且當日志中充滿了嚴重的異常情況時,我們認爲這是遊戲結束。 – Jonesome