Elasticsearch(八)簡述 Elasticsearch 的分布式架構(gòu)

對復(fù)雜分布式機制的透明隱藏特性
  • Elasticsearch 是一套分布式系統(tǒng),分布式是為了應(yīng)對大數(shù)據(jù)量,Elasticsearch 為我們隱藏了復(fù)雜的分布式機制,符合開箱即用的特點

  • 分片機制(之前我們隨隨便便就將一些 document 插入到 Elasticsearch 集群中了,我們并不關(guān)心數(shù)據(jù)是怎么進行分片的,數(shù)據(jù)到哪個 shard 中去了,這些都是 Elasticsearch 內(nèi)部幫我們做好的,隱藏了復(fù)雜的實現(xiàn),我們直接用就好了)

  • cluster discovery(集群發(fā)現(xiàn)機制,之前在做集群 status 從 "yellow" 轉(zhuǎn) "green" 的實驗中,直接啟動第二個 Elasticsearch 進程,進程作為一個 node 自動就發(fā)現(xiàn)了集群,并且加入了進去,還接受了部分數(shù)據(jù)(replica shard))

  • shard 負載均衡(假設(shè)現(xiàn)在有 25 個 shard 要分配到 3 個節(jié)點上去,Elasticsearch 會自動進行均勻分配,以保證每個節(jié)點均衡的讀寫負載請求)

垂直擴容與水平擴容
  • 垂直擴容:采購更強大的服務(wù)器,成本非常高昂,而且會有瓶頸。

  • 水平擴容:業(yè)界經(jīng)常采用的方案,采購越來越多的普通服務(wù)器,性能比較一般,但是很多普通服務(wù)器組織在一起,就能構(gòu)成強大的計算和存儲能力。

假設(shè):6 臺服務(wù)器,每臺容納 1 T數(shù)據(jù),數(shù)據(jù)量馬上要增長到 8 T,這時候兩個擴容方案:
(1)垂直擴容:重新購置兩臺服務(wù)器,每臺服務(wù)器的容量是 2 T,替換掉老的兩臺服務(wù)器,那么現(xiàn)在是 6 臺服務(wù)器,總?cè)萘烤褪?4 * 1T + 2 * 2T = 8T

(2)水平擴容:重新購置兩臺服務(wù)器,每臺服務(wù)器的容量是 1 T,直接加入到集群中去,那么現(xiàn)在是 8 臺服務(wù)器,總?cè)萘烤褪?8 * 1T = 8T(業(yè)界幾乎都采用這種方式)

數(shù)據(jù) rebalance

總有某些節(jié)點的負載會重一些,承載的數(shù)據(jù)量和請求量會大一些。當增加或者減少節(jié)點時數(shù)據(jù) rebalance,以保持負載均衡。

master 節(jié)點
  • 管理 Elasticsearch 集群中的元數(shù)據(jù):比如索引的創(chuàng)建和索引的刪除,維護索引元數(shù)據(jù);節(jié)點的增加和移除,維護集群元數(shù)據(jù)。

  • 默認情況下,會自動選擇一臺節(jié)點作為 master 節(jié)點。

注意:master 節(jié)點不承載所有的請求,所以不會是一個單點瓶頸。(這句話的意思是說并不是因為它是 master 節(jié)點,所以所有請求都由他來轉(zhuǎn)發(fā),而是每個節(jié)點都有可能被請求到)

節(jié)點對等的分布式架構(gòu)
  • 節(jié)點對等,每個節(jié)點都能接收所有請求
  • 自動請求路由
  • 相應(yīng)收集數(shù)據(jù)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容