2023學年完整公開課版讀文件流程_第1頁
2023學年完整公開課版讀文件流程_第2頁
2023學年完整公開課版讀文件流程_第3頁
2023學年完整公開課版讀文件流程_第4頁
2023學年完整公開課版讀文件流程_第5頁
已閱讀5頁,還剩6頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

讀文件流程1、掌握hdfs讀文件的流程1、讀文件流程圖

2、讀文件步驟

3、注意事項

4、設計好處

讀文件流程圖1、首先調用FileSystem對象的open方法,其實獲取的是一個DistributedFileSystem的實例。2、DistributedFileSystem通過RPC(遠程過程調用)獲得文件的第一批block的locations,同一block按照重復數會返回多個locations,這些locations按照Hadoop拓撲結構排序,距離客戶端近的排在前面。步驟詳述3、前兩步會返回一個FSDataInputStream對象,該對象會被封裝成DFSInputStream對象,DFSInputStream可以方便的管理DataNode和NameNode數據流。客戶端調用read方法,DFSInputStream就會找出離客戶端最近的DataNode并連接DataNode。4、數據從DataNode源源不斷的流向客戶端。步驟詳述5、如果第一個block塊的數據讀完了,就會關閉指向第一個block塊的DataNode連接,接著讀取下一個block塊。這些操作對客戶端來說是透明的,從客戶端的角度來看只是讀一個持續不斷的流。6、如果第一批block都讀完了,DFSInputStream就會去NameNode拿下一批blocks的location,然后繼續讀,如果所有的block塊都讀完,這時就會關閉掉所有的流。

步驟詳述

在讀取數據的過程中,如果客戶端在與數據節點通信出現錯誤,則嘗試連接包含此數據塊的下一個數據節點。同時會記錄這個節點的故障。這樣它就不會再去嘗試連接和讀取塊。客戶端還會驗證從DataNode傳送過來的數據校驗和。如果發現一個損壞的塊,那么客戶端將會再嘗試從別的DataNode讀取數據塊,向NameNode報告這個信息,NameNode也會更新保存的文件信息。注意事項客戶端通過NameNode引導獲取最合適的DataNode地址,然后直接連接DataNode讀取數據。

這種設計的好處是,可以使HDFS擴展到更大規模的客戶端并行處理,這是因為數據的流動是在所有DataNode之間分散進行的。同時NameNode的壓力也變小了,使得NameNode只用提供請求塊所在的位置信息就可以了,而不用通過它提供數據,這樣就避免了NameNode

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論