HDFS的寫資料流程

2021-10-25 16:16:35 字數 601 閱讀 3034

hdfs的寫資料流程

(1)客戶端通過distributed filesystem模組向namenode請求上傳檔案,namenode檢查目標檔案是否已存在,父目錄是否存在。

(2)namenode返回是否可以上傳。

(3)客戶端請求第乙個block上傳到哪幾個datanode伺服器上。

(4)namenode返回3個datanode節點,分別為dn1、dn2、dn3。

(5)客戶端通過fsdataoutputstream模組請求dn1上傳資料,dn1收到請求會繼續呼叫dn2,然後dn2呼叫dn3,將這個通訊管道建立完成。

(6)dn1、dn2、dn3逐級應答客戶端。

(7)客戶端開始往dn1上傳第乙個block(先從磁碟讀取資料放到乙個本地記憶體快取),以packet為單位,dn1收到乙個packet就會傳給dn2,dn2傳給dn3;dn1每傳乙個packet會放入乙個應答佇列等待應答。

(8)當乙個block傳輸完成之後,客戶端再次請求namenode上傳第二個block的伺服器。

(重複執行3-7步)

HDFS寫資料流程

客戶端要向hdfs寫資料,首先要跟namenode通訊以確認可以寫檔案並獲得接收檔案block的datanode,然後,客戶端按順序將檔案逐個block傳遞給相應datanode,並由接收到block的datanode負責向其他datanode複製block的副本 客戶端執行寫入操作 當客戶端結束寫...

HDFS寫資料流程

1 客戶端向namenode請求上傳檔案,namenode檢查目標檔案是否已存在,父目錄是否存在。2 namenode返回是否可以上傳。3 客戶端請求第乙個 block上傳到哪幾個datanode伺服器上。4 namenode返回3個datanode節點,分別為dn1 dn2 dn3。5 客戶端請求...

Hdfs寫資料流程

我的hadoop集群是三颱伺服器,分別為hadoop101,hadoop102,hadoop103。其中,namenode部署在hadoop101上面,三颱伺服器分別部署乙個datanode,secondarynamenode在hadoop103上。一,客戶端建立乙個檔案系統物件向namenode申...