HDFS分布式原理 概念篇

2021-08-28 21:03:54 字數 2315 閱讀 2222

hdfs分布式系統

2023年10月9日

11:50

什麼是大資料:短時間內快速的產生海量的多種多樣的有價值的資料

大資料的技術:

分布式儲存

分布式計算

分布式批處理

資料積攢一段時間,在未來某一時刻一次性計算一批資料

分布式流處理

資料實時進行計算,產生一條計算一條

需要注意的是:角色在集群中都是用程序來體現的,乙個節點啟動了什麼程序就扮演什麼角色,乙個節點可以扮演多個角色。

寫操作:通過管道並行的,同步的對block資料塊進行寫入與備份,以64k大小的packet為單位。

讀操作datanode的作用:

儲存block塊,向namenode傳送「心跳」,判斷是否正常存在

接收client的讀請求

在分布式系統中,為了保證資料的安全性,常對每乙個datanode中的資料進行備份,備份數量為2,備份在集群中的兩台伺服器上。

具體備份機制為:

1.第乙個block儲存在負載較小的一台伺服器上

2.第乙個備份的block儲存在與第乙個block不同機架隨機一台伺服器上

3.第二個備份在與第乙個備份相同的機架另一台隨機的伺服器上

(機架:hdfs集群主要是由分布在不同機架上的多個機架的datanode組成的,相同機架上的機器之間通過tcp協議進行相應的連線(7077埠),不同機架上的節點通過交換機進行通訊,hdfs會通過機架感知策略感知每乙個datanode所屬的機架,使用副本放置策略來改進資料的可靠性、可用性和網路頻寬的利用率。)

減輕namenode的工作量,確保記憶體的工作效率

合併觸發機制:

1.超過3600s

2.edits檔案超過64m

primarynamenode 中儲存好edits和fsimage兩個檔案。edits記錄使元資料發生變化的操作,fsimage中記錄變化後的元資料。持久化過程就是將記憶體的元資料儲存到磁碟上(secondarynamenode)進行備份,保證集群的效率,並在磁碟上進行元資料資訊的合併,合併後將合併檔案再返回給primarynamenode;注意的是,當primarynamenode的edits檔案被取走時,primarynamenode隨即建立乙個新的記錄檔案,以防止資料丟失,在返回合併檔案後,將新建的edits檔案更名為edits。

注意:並不是所有元資料都會持久化,除了block位置資訊,其他的元資料都會持久化,為保證元資料不缺失,當hdfs集群啟動時,所有的datanode都會向namenode匯報當前節點的block資訊

總結:當集群啟動之時,datanode會向namenode傳送一些資訊(block位置、datanode位址,這些都由datanode自己為namenode提供)存放在namenode中作為元資料;重啟時namenode做一次且唯一一次的合併工作,讀取合併上次關閉集群時的edits和fsimage

客戶端匯報當前要上傳的檔案資訊(block數量)檔案的上傳時間、許可權、擁有者,也存放在namenode作為元資料

客戶端匯報完資訊後,namenode請求乙個id號以及請求存放的位置;一般採用集群外提交,namenode返回給客戶端乙個負載不高的datanode,然後根據備份機制將資料備份在另外兩台伺服器上,(如果是集群內提交,第乙個位置是當前節點,第二三仍遵循備份機制);寫資料時採用的是管道方式的傳輸,將block分解成乙個個packet(64k)進行寫入與備份,採取這樣的方式為的是使此過程實現並行,以提高效率。

secondarynamenode的作用:模擬執行 edits檔案,產生元資料,將元資料與fsimage合併合併完成後,將新的fsimage推送給namenode

檔案的許可權依據linux系統的使用者系統預設的許可權

集群啟動時會進入一段時間的安全模式,作用

a) 載入fsimage,載入到記憶體中

b) 如果edits檔案不為空,那麼namenode自己合併一次

c) 檢查datanode的健康情況

d) 如果有datanode服務停止了,指揮做備份

e) 處於安全模式時,只能看到檔案目錄,無法讀取檔案

7.hdfs集群不允許修改,檔案的block大小不允許修改

分布式儲存 HDFS原理

短時間內快速產生的海量的多種多樣的有價值的資料。1 分布式儲存 2 分布式計算 1 分布式批處理 當資料積累一定的時間後 假設乙個月 進行統一的處理。2 分布式流處理分布式流處理是乙個實時的處理。即資料生成後立即處理。3 機器學習 凡是 類的都是機器學習。分布式儲存 系統學習分布式儲存 過程 hdf...

分布式 概念

分布式系統是指元件分布在網路上,元件之間通過傳遞訊息進行通訊和動作協調的系統,她的核心理念是讓多台伺服器協同工作,完成單台伺服器無法處理的任務,尤其是高併發和大資料的任務。她的特點如下 透明性 分布式系統對使用者來說是透明的,乙個分布式系統在使用者面前的表現就像乙個傳統的單處理機分時系統,可讓使用者...

HDFS 分布式儲存基石

hdfs是hadoop 分布式檔案系統。namenode與datanode 集群結構 hdfs讀取寫入過程 通過網路拓撲圖判斷距離 namenode深入 作用 儲存結構 啟動過程 開啟安全模式 不能執行資料修改操作 載入fsimage 逐個執行所有edits檔案中的每一條操作將操作合併到fsimag...