上篇Hadoop之HDFS原理及文件上傳下載源碼分析(上)樓主主要介紹了hdfs原理及FileSystem的初始化源碼解析, Client如何與NameNode建立RPC通信。本篇將繼續(xù)介紹hdfs文件上傳、下載源解析。

文件上傳

  先上文件上傳的方法調(diào)用過程時(shí)序圖:

  移動開發(fā)培訓(xùn),Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),手機(jī)維修培訓(xùn),手機(jī)軟件培訓(xùn)

  

   其主要執(zhí)行過程:

  1.    FileSystem初始化,Client拿到NameNodeRpcServer代理對象,建立與NameNode的RPC通信(樓主上篇已經(jīng)介紹過了)

  2.    調(diào)用FileSystem的create()方法,由于實(shí)現(xiàn)類為DistributedFileSystem,所有是調(diào)用該類中的create()方法

  3.    DistributedFileSystem持有DFSClient的引用,繼續(xù)調(diào)用DFSClient中的create()方法

  4.    DFSOutputStream提供的靜態(tài)newStreamForCreate()方法中調(diào)用NameNodeRpcServer服務(wù)端的create()方法并創(chuàng)建DFSOutputStream輸出流對象返回

  5.    通過hadoop提供的IOUtil工具類將輸出流輸出到本地

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式