hdfs設計目標
1)硬體錯誤是常態,資料儲存需要冗餘。
2)資料批量讀取,
hadoop
擅長資料分析而不是事務處理。
3)大規模資料集。
4)簡單一致醒模型,降低系統複雜度,檔案一次寫入多次讀取,5)「
資料就近
」原則分配資料節點。
hdfs體系結構
namenode
datanode
secondaynamenode
事務日誌
映像檔案
namenode
檔案系統命名空間
記錄每個檔案系統資料塊在各個datanode
上的位置和副本資訊。
協調client
對檔案的訪問
記錄命名空間內的改動
namenode使用
事務日誌記錄hdfs
元資料的變化
。使用映
像檔案儲存檔案系統的命名空間,檔案對映,檔案屬性等。
datanode
負責物理節點的儲存管理
一次寫入,多次讀取(不修改)。
檔案由資料塊(block
)組成預設為
64mb
。block應盡量分配在不同的物理節點上。
hdfs讀取流程
client要訪問
hdfs
上的乙個檔案
1)從nn
獲取組成這個檔案的
block
位置列表。
2)更具列表知道儲存資料快的dn。3)
訪問dn
獲取資料。
4)nn並不參與資料實際傳輸。
hdfs如何保證集群當中的資料儲存可靠性
1)冗餘副本
2)機架策略
3)心跳機制
4)安全模式
5) 快照機制
冗餘副本
hdfs預設每個
block
三個副本(不足三分制動),
dn啟動時,向
nn匯報各資料快資訊。
機架策略
集群一般放在不同機架上,
hdfs「機架感知」
一般第乙個副本存放在上穿文價的本機架上,如果是本集群外提交,則隨機挑選磁碟不太滿,cpu
不太忙的節點儲存。
第二個副本放在與第乙個機架不同的節點上,
第三個副本放在與第二個副本相同的節點上。
心跳機制
nn週期從
dn接收心跳資訊和
block
報告(3
秒一次)
nn根據
block
報告驗證元資料
沒按時傳送心跳(10
分鐘)的
dn則認為已經
lost
,並copy
其上的block
到其他dn
。安全模式
nn啟動時會經過「安全模式」階段
安全模式階段不會產生寫操作,只執行寫操作
次階段nn
收集nn
的報告,當
block
達到最小副本數以上時,會被認
為是「安全」的, 當block
未達到最小副本數時,該塊會被複製知道達到安全。
**站刪除檔案時,將檔案放入**站。
**站裡檔案可以快速恢復。
當達到一定閥值時,就被徹底刪除,釋放占用block。快照
支援某一時間點的映像,需要時是資料重返這個時間點。
分布式檔案系統 HDFS
hdfs源於google發表的乙份gfs hdfs是hadoop專案的核心子專案,是分布式計算中資料儲存管理的基礎,可以執行在廉價機器上,具有高容錯 高可靠性 高可擴充套件性 高獲得性 高吞吐率等特性,為超大資料集的應用處理帶來極大便利。1 hdfs的優點 1 高容錯性 資料自動儲存多個版本,通過增...
分布式檔案系統HDFS
以 bin dfs dfs 開頭的shell命令方式 1 在hdfs中為hadoop使用者建立乙個使用者目錄 hadoop使用者 2 在使用者目錄下建立乙個input目錄 3 在hdfs的根目錄下建立乙個名稱為input的目錄 4 刪除hdfs根目錄中的 input 目錄 在該檔案裡面可以隨意輸入一...
分布式檔案系統HDFS
以 bin dfs dfs 開頭的shell命令方式 1 在hdfs中為hadoop使用者建立乙個使用者目錄 hadoop使用者 2 在使用者目錄下建立乙個input目錄 3 在hdfs的根目錄下建立乙個名稱為input的目錄 4 刪除hdfs根目錄中的 input 目錄 在該檔案裡面可以隨意輸入一...