2017-06-17 42 views
0

我是新來的彈性搜索,並試圖瞭解它的搜索過程中使用分片複製,從彈性搜索的文檔中,我發現如果主碎片發生故障,使用碎片複製來處理容錯,任何副本碎片可以作爲主碎片。ElasticSearc Shard在搜索中使用的副本

但文件還提到,它有助於負載平衡時,有沉重的搜索流量和

也是有可能的副本碎片是如何選擇服務搜索有多個副本在這種情況下,每個碎片?

是否就像我在其他節點上有一個主分片和3個副本,那麼總共4個副本, 然後當多個搜索請求進入彈性搜索時,每個搜索都將被轉移到這四個副本中的僅一個?

我也在尋找一些複製品碎片用法的圖形表示,以便更好地理解。

回答

1

舊文件,但碎片分配和圖形仍然具有現實意義: https://www.elastic.co/guide/en/elasticsearch/guide/current/replica-shards.html https://www.elastic.co/guide/en/elasticsearch/guide/current/_how_primary_and_replica_shards_interact.html

本質上講,它是數據的重複,使讀取更快,也防止數據丟失。作爲折衷,寫入速度較慢,因爲您的羣集需要寫入主分片,然後通過網絡將數據傳輸到副本分片。

讀取速度更快的原因是,正如您所提到的,負載在節點之間是平衡的。如果一個節點的響應速度比其他節點快得多,那麼結果會更快地返回。 https://www.elastic.co/guide/en/elasticsearch/guide/current/distrib-read.html

因爲寫入速度較慢,所以關閉複製副本碎片以便進行大規模批量寫入的索引是明智的,然後再複製副本。

當然,如果您發送頻繁的更新,您可能不希望跨節點的所有數據重複。考慮調整您的副本並運行性能測試,以獲得您在日常讀/寫性能之間的理想平衡。