HDFS讀寫流程

HDFS寫流程(上傳文件)

  1. client向NN發請求上傳數據;
  2. NN檢查數據:檢查文件上傳的目錄是否存在,是否存在此文件
  3. NN向client響應上傳
  4. (client是分塊上傳)client向NN請求上傳blk1
  5. NN查詢DN信息:哪些DN是活躍,是否宕機,存儲空間怎麼樣
  6. NN向client返回能夠上傳的DN
  7. 就近原則上傳blk1的請求
  8. DN1收到請求後會把消息傳給DN2,DN2傳給DN3,而後從DN3逐步返回知道client’,即完成pipeline(管道)的創建,pipeline是爲了後續blk的傳輸作準備
  9. Client把blk1上傳到DN1(是分packet進行傳輸的),DN1發送DN2,DN2發送ND3
  10. Blk1上傳後,要向NN發送上傳完成消息:用於記錄存儲空間等信息;同時也向client發送上傳完成消息
  11. Client開始上傳其餘blk

HDFS讀流程(下載文件)spa

  1. client向NN請求下載文件
  2. NN向client返回元數據:包括多少個blk,分別在哪些DN上
  3. Client向DN1請求下載數據blk1
  4. DN1向client傳輸數據blk1
  5. 請求其餘blk的下載
相關文章
相關標籤/搜索