上篇Hadoop之HDFS原理及文件上傳下載源碼分析(上)樓主主要介紹了hdfs原理及FileSystem的初始化源碼解析, Client如何與NameNode建立RPC通信。本篇將繼續(xù)介紹hdfs文件上傳、下載源解析。
文件上傳
先上文件上傳的方法調用過程時序圖:
其主要執(zhí)行過程:
FileSystem初始化,Client拿到NameNodeRpcServer代理對象,建立與NameNode的RPC通信(樓主上篇已經介紹過了)
調用FileSystem的create()方法,由于實現(xiàn)類為DistributedFileSystem,所有是調用該類中的create()方法
DistributedFileSystem持有DFSClient的引用,繼續(xù)調用DFSClient中的create()方法
DFSOutputStream提供的靜態(tài)newStreamForCreate()方法中調用NameNodeRpcServer服務端的create()方法并創(chuàng)建DFSOutputStream輸出流對象返回
通過hadoop提供的IOUtil工具類將輸出流輸出到本地
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應用分析 2017-07-26
- 集合結合數(shù)據(jù)結構來看看(二) 2017-07-26