ElasticSearch —— 高級介紹(四)

1、ES如何實現分佈式高併發全文檢索?爲什麼要實現集羣?

         ES核心存放是索引。

         由於在單臺ES服務器節點上,隨着業務量的發展索引文件慢慢增多,會影響到效率和內存存儲問題。

         如果ES實現了集羣的話,會將單臺服務器節點的索引文件使用分片技術,分佈式存放在多個不同的物理機器上。

         從而可以實現高可用、容錯性等。

         分片技術:將數據拆分成多臺節點進行存放。   

2、簡單介紹ES分片Shards分片技術?ES是如何解決高併發?

          ES是一個分佈式全文檢索框架,隱藏了複雜的處理機制,內部使用分片機制、集羣發現、分片負載均衡請求路由。

          Shards分片:代表索引分片,ES可以把一個完整的索引分成多個分片,這樣的好處是可以把一個大的索引拆分成多個,

                                分佈到不同節點上。構成分佈式搜索。分片的數量只能在索引創建前指定,並且索引創建後不能更改。

          Replicas分片:代表索引副本,ES可以設置多個索引的副本,副本的作用一是提供系統的容錯性,

                                  當某個節點某個分片損壞或丟失時可以從副本中恢復。二是提高ES的查詢效率,

                                   ES會對自動搜索請求進行負載均衡。

        number_of_shards: 5    主分片

        number_of_replicas: 1    副分片

        在ES中每一個主分片都會對應一個副分片,如果已經定義好了主分片的數量,就不能再改主分片的數量。

3、爲什麼ES主分片對應的備份分片不在同一臺節點存放?

     每一個主分片爲了實現高可用,都會有對應的備份分片,主分片對應的備份分片不能不能存放同一臺服務器上,主分片可以和其他備份分片存放在同一node節點上。

注意:對應的主的分片和備的分片不能存放在同一node節點上。

4、索引的主分片定義好後爲什麼不能作修改?

5、ES如何實現高可用容錯方案?       

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章