1、客戶端將待寫入的檔案資訊上傳給namenode
2、namenode檢測要上傳的檔案
3、將是否可上傳的資訊返回給客戶端
4、client將待上傳的檔案進行切塊,然後上傳blk1
5、namenode根據集群中現存的快資訊和機架感知,選出可上傳的主機(假設時datanode1和datanode2和datanode3)
6、namenode返回datanode列表(dn1,dn2,dn3)
7、client和datanode之間建立pipline,datanode與datanode之間建立pipline
8、client向dadanode傳遞資料(傳遞的單位:packet:64k)
9、datanode將packet資訊進行快取
10、上傳結束後datanode向datanode傳送應答,datanode向客戶端(client)傳送應答,說明第一塊block已上傳完成。
HDFS檔案讀取和寫入
讀取檔案 一 讀取方式一 寫入哪個datanode是不確定的,主要尋找讀取速度較快的datanode 怎麼找到這種datanode,從以下幾個方面 是否有本機位置,本機架位置,本機房位置 依次重試讀取檔案,直到讀取檔案成功 二 讀取方式二 backupread 每次讀取時,client會並行試著讀取...
HDFS讀取和寫入流程
1 讀檔案的過程 首先 client 通過 file system 的 open 函式開啟檔案,distributed file system 用 rpc呼叫 namenode 節點,得到檔案的資料塊資訊。對於每乙個資料塊,namenode 節點返回儲存資料塊的資料節點的位址。distributed...
HDFS檔案的寫入和讀取過程
hdfs檔案寫入 client 發起檔案上傳請求,通過 rpc 與 namenode 建立通訊namenode 檢查目標檔案是否已存在,父目錄是否存在,返回是否可以上傳client請求上傳第乙個 block namenode 根據配置檔案中指定的備份數量及機架感知原理進行檔案分配,返回可用的 dat...