集羣磁盤損壞導致hadoop文件丟失的概率計算

    在與客戶溝通的時候,經常會有客戶詢問關於hadoop的安全問題。由於hadoop的底層的磁盤不做raid或者僅僅是做raid 0,客戶認爲磁盤損壞容易造成數據丟失。你跟客戶闡述採用3副本機制,客戶也會說:即使3副本也會有3塊不同節點的磁盤同時損壞的可能啊!這時候我會跟客戶舉例子算一下三個不同節點的磁盤同時損壞的概率。

    爲了簡單起見,我們假如數據節點上的文件都小於64MB,這樣這些文件的每一個都在hdfs上僅有3個block塊,分佈在三個不同的數據節點中。假設磁盤在一年中某一天某一時刻損壞的概率是p=1/1000(非常保守的假設),總共有5個數據節點,每個數據節點10塊磁盤,分佈在三個不同數據節點的磁盤同時損壞的概率計算如下:


    計算結果爲0.001%。假如磁盤在某一天某一時刻損壞的概率爲1/10000,這樣得到的三個在不同節點上的磁盤同時損壞的概率小於0.000001%。

    實際上,三個損壞的磁盤不一定同時存儲一個文件的三個block塊,所以文件丟失的概率遠遠要小於磁盤同時損壞的概率。所以,如果hadoop中數據採用3副本,磁盤不做raid 1或者raid 5,數據都是安全的。除非hadoop的元數據損壞。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章