這篇文章主要為大家展示了“Hadoop文件讀取的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學習一下“Hadoop文件讀取的示例分析”這篇文章吧。
創(chuàng)新互聯(lián)擁有十載成都網(wǎng)站建設(shè)工作經(jīng)驗,為各大企業(yè)提供網(wǎng)站制作、網(wǎng)站建設(shè)服務,對于網(wǎng)頁設(shè)計、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、成都App制作、wap網(wǎng)站建設(shè)(手機版網(wǎng)站建設(shè))、程序開發(fā)、網(wǎng)站優(yōu)化(SEO優(yōu)化)、微網(wǎng)站、域名注冊等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了很多網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)絡營銷經(jīng)驗,集策劃、開發(fā)、設(shè)計、營銷、管理等網(wǎng)站化運作于一體,具備承接各種規(guī)模類型的網(wǎng)站建設(shè)項目的能力。

客戶端通過調(diào)用FileSystem對象的open()方法來打開希望讀取的文件,對于HDFS來說,這個對象是分布式系統(tǒng)(步驟1)的一個實例。DistributedFileSystem通過使用RPC來調(diào)用namenode,以確定文件起始塊的位置(步驟2),對于每一個塊,namenode返回存有該塊復本的datanode地址,此外,這些datanode(比如,在一個MapReduce任務中),并保存有相應數(shù)據(jù)庫的一個復本時,該節(jié)點將本地datanode中讀取數(shù)據(jù)。DistributedFileSystem累返回一個FSDataInputStream對象(一個支持文件定位的輸入流)給客戶端并讀取數(shù)據(jù)。FSDataInputStream類轉(zhuǎn)而封裝DFSInputStream對象,該對象管理著datanode和namenode的I/O,接著,客戶端對這個輸入流調(diào)用read()方法(步驟3)。存儲著文件起始塊的datanode地址的DFSInputStream隨機連接距離最近的datanode。通過對數(shù)據(jù)流反復調(diào)用read()方法,可以將數(shù)據(jù)從datanode傳輸?shù)娇蛻舳?步驟4).到達塊的末端時,DFSInputStream會關(guān)閉與該datanode的連接,然后需找下一個塊的最近datanode(步驟5)。客戶端只需要讀取連續(xù)的流,并且操作對于客戶端都是透明的。客戶端從流中讀取數(shù)據(jù)時,塊是按照打開DFSInputStream與datanode新建連接的順序讀取的,它也需要詢問namenode來檢索下一批所需快的datanode的位置,一旦客戶端完成讀取,就對FSDataInputStream調(diào)用close()方法(步驟6)。在讀取數(shù)據(jù)的時候,如果DFSInputStream在與datanode通信時遇到錯誤,它便會嘗試從這個快的另外一個最領(lǐng)近datanode讀取數(shù)據(jù)。它也會機主那個故障datanode,以保證以后不會反復讀取該節(jié)點上后續(xù)的塊。DFSInputStream也會通過校驗和確認從datanode發(fā)來的數(shù)據(jù)是否完整。如果發(fā)現(xiàn)一個損壞的塊,它就會在DFSInputStream視圖從其他datanode讀取一個塊的復本之前通知namenode。這個設(shè)計的一個重點是:namenode告知客戶端每個塊中最近的datanode,并讓客戶端直接聯(lián)系該datanode且檢索鎖具。由于數(shù)據(jù)流分散在該集群中的所有datanode,所以這種設(shè)計能使HDFS可擴展到大量的并發(fā)客戶端。同時,namenode僅需要相應塊位置的請求(這些信息存儲在內(nèi)存中,因而非常高效),而無需相應數(shù)據(jù)請求,否則隨著客戶端數(shù)據(jù)的增長,namenode很快會變?yōu)橐粋€瓶頸。
以上是“Hadoop文件讀取的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
新聞標題:Hadoop文件讀取的示例分析
本文網(wǎng)址:http://www.chinadenli.net/article38/pecgpp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務器托管、小程序開發(fā)、品牌網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)