ZKFC支援HDFS HA的原理

2021-09-24 17:31:57 字數 1409 閱讀 1280

ha首先是啟動兩個namenode,乙個是active狀態,乙個是standby,當active掛掉後,standby通過zookeepe會自動迅速的替代上。這樣集群就會非常的可靠。zookeeper如何知道namenode是active或standby狀態呢?他是通過兩個程序來知道的,叫做zookeeper failovecontroller(故障排除 控制器) active  和zookeeper failovecontroller standby 。簡稱 zkfc, 兩個namenode會定時的向這兩個程序匯報。也就是傳送心跳報告,然後zookeeper就通過zkfc會得到這些資訊。如果zookeeper沒有收到zkfc某個namenode傳送的心跳,那麼zookeeper就 會認為這台機器掛掉了,然後zcfc active會釋放鎖給到zookeeper, 然後zkfcstantby就會獲得這鎖,把nnstandby啟動為nnactive狀態,在啟動過程中他會先把另乙個已經掛掉的namenode給kill掉,防止腦裂,因為nnactive向zkfc傳送心跳資訊時可能會有特殊情況導致誤報。所以要kill掉,防止腦裂。

兩個namenode最重要的是資料同步,也就是同步元資料資訊以及日誌檔案。在整個ha架構中,只要datanode的資料發生改變,namenodeactive會實時的把元資料資訊以及日誌檔案寫入到journalnode(journal 日誌),journalnode的數量可以自己設定數量,一般設定為三個,保證高可用,namenode把元資料資訊以及日誌檔案寫到journalnode以後,namenodestandby會實時的把裡面的資料讀到本地。這樣就會保證資料的一致性。

failovecontroller 故障排除 控制器  high ability。高可用 hdfs集群中namenode存在單點故障,對於只有乙個namednode的集群,如果namenode機器出現故障downtime, 比如說停電了,或者說硬體損壞,那麼整個集群將無法使用,直到管理員手動啟動namenode 才可以繼續使用集群,但是機房我們不可能隨時都有人守著,所以我們需要配置乙個ha,

影響hdfs集群不可用主要包括以下兩種情況

namenode機器宕機,將導致集群不可用,重啟 namenode之後オ可使用

計畫內的軟體或硬體公升級( namenode節點),導致集群在短時間內不可用

hdfs的ha就是為了解決上述問題,通常由兩個 namenode組成,乙個處於active狀態,另乙個處於 standby狀態。 active namenode對外提供服務,比如處理來自客戶端的rpc請求,而 standby namenode則不對外提供服務,僅同步 active namenode的狀態,以便能夠在它失敗時快速進行切換。

支援向量機的原理

很早就買了 資料探勘中的新方法 支援向量機 一直沒有認真看。最近複習了向量,空間,矩陣,然後從頭開始看發現逐漸看出一些門道了。支援向量機,開始給人的感覺很高階,其實也是一類求最大值的問題。只是樣本都是一些向量,劃分的時候也是用直線去劃分。這是一類求最大化,最小化求值。一切都是從簡單的二維點的劃分開始...

支援向量機SVM原理

支援向量和間隔邊界 如上圖所示,舉例來說 如上圖所示,其中x1,x2為正例,x3為反例,則svm希望有如下約束 支援向量機模型中,我們的學習目標 至此,我們已經推導完畢,得到最優的w,b。從上式上我們可以看出,分類決策函式只依賴於輸入x和訓練樣本輸入的內積 這一內積又與後面的核函式有著千絲萬縷的聯絡...

SVM 支援向量機 原理

1.svm support vector machine 支援向量機 是一種有監督的分類演算法 有監督的分類模型 就是事先對資料打上標籤,這樣機器就知道資料是哪個分類.無監督是事先沒有打標籤,比如資料聚類,然後對每個類精心分析.svm通常是幫我們模式識別,分類以及回歸分析.2.svm計算的過程就是找...