Hdfs讀資料的流程

2021-08-20 19:42:15 字數 532 閱讀 3226

客戶端將要讀取的檔案路徑傳送給namenode,

namenode

獲取檔案的元資訊(主要是

block

的存放位置資訊)返回給客戶端,客戶端根據返回的資訊找到相應

datanode

逐個獲取檔案的

block

並在客戶端本地進行資料追加合併從而獲得整個檔案

1、跟namenode

通訊查詢元資料,找到檔案塊所在的

datanode

伺服器2、挑選一台

datanode

(就近原則,然後隨機)伺服器,請求建立

socket流3、

datanode

開始傳送資料(從磁碟裡面讀取資料放入流,以

packet

為單位來做校驗)

4、客戶端以

packet

為單位接收,現在本地快取,然後寫入目標檔案

HDFS讀資料流程

1 使用 hdfs 提供的客戶端 client,向遠端的 namenode 發起 rpc 請求 2 namenode 會視情況返回檔案的全部 block 列表,對於每個 block,namenode 都會返回有該 block 拷貝的 datanode 位址 3 客戶端client會選取離客戶端最近的...

hdfs讀資料流程

2,客戶端挑選一台datanode 按照就近原則,返回的塊位址根據網路拓撲圖排序,距離客戶端進的排在前面 伺服器,建立連線,請求讀取資料 如果dn異常,則從第二優先的dn讀取資料,並且標記該dn異常,後續讀取塊的資料直接跳過該dn。3,datanode開始傳輸資料給客戶端 從磁碟讀取資料輸入流,以p...

Hdfs的讀資料流程

2 那麼node檢查許可權,檢查時候有該檔案,通過機架感知和負載情況,返回比較合適的三個datanode給client,如果檔案有多個塊,乙個塊一組datanode。3 client開啟乙個流,首先請求第乙個塊,首先請求第乙個節點,如果第乙個節點不可訪問,則請求第二個節點。4 datanode返回相...