亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

HDFS原理及架構

發布時間:2020-07-13 06:41:50 來源:網絡 閱讀:462 作者:afeiye 欄目:大數據

HDFS架構

HDFS是一個master/slave結構的服務,其中NameNode是master,一般只在一臺節點上啟動;DataNode是slave,一般每臺節點都會啟動一個;DataNode不斷地主動向NameNode發送心跳、匯報block信息等;為了對NameNode進行備份,還會有一個SecondaryNameNodeHDFS原理及架構

HDFS各類操作

  1. 創建目錄
    HDFS原理及架構
    client與namenode直接交互,在INode中創建目錄節點,并將操作寫入edit log中即可,全程不需要datanode參與。
  2. 刪除文件
    HDFS原理及架構
    客戶端與namenode交互刪除文件,namenode只是標記要刪除,但不會主動通知datanode;
    當對應的datanode向namenode發送心跳時,namnode會把刪除指令放到返回值里;
    所以一般刪除不是立即刪除,而是有一定的延遲。
  3. 讀文件
    HDFS原理及架構
    client先與namenode交互,通過getBlockLocatitions方法獲取到文件block所在節點,然后client再與datanode交互獲取具體數據;
    block可能不是一次全部返回,可能需要多次調用getBlockLocatitions。
    客戶端讀數據時如果DN發生故障,則會接著讀取下一個數據塊兒,并記錄這個出故障的節點;讀數據返回中包含了數據的校驗和,如果發現錯誤,會報告給NN,并從其它副本讀取。
  4. 寫文件
    HDFS原理及架構
    client先與NN交互,在NN命名空間中創建一個新文件;
    第二步client真正寫入之前再跟NN交互獲取要在哪兒寫,addBlock返回一個LocateBlock對象,包含數據庫標志和版本號;
    LocateBlock還提供了跟DN交互的數據流管道,client寫入到管道中的數據被分為一個個的文件包,這些被放入到一個輸出隊列中;
    第三步client跟DN交互寫入數據,第一個節點寫完,由第一個DN向第二個DN寫,寫完還要返回ack確認信息;如果收到ack確認信息,則將這個文件包從隊列中刪除;
    寫完一個數據塊之后,DN會跟NN交互,向NN提交這個數據塊。

對于某個DN發生故障的情況:
1,先關閉數據流通道,正在寫的數據包由于沒有收到ack,不會從隊列中刪除,數據不會丟失;
2,正常的DN上的數據塊會被賦予一個新的版本號,并通知NN。主要是故障節點恢復后,發現版本號跟NN上的不一致就會自動刪除了;
3,數據流管道刪除錯誤節點并重新建立管道,繼續在正常幾點上寫數據;
4,文件關閉后,NN發現此數據庫沒有達到副本數要求,會選擇一個新的DN來復制數據塊。

  1. SecNameNode備份
    hdfs的元數據保存在Inode對象中,但是namenode是一個單點master,如果數據都在內存則無法進行故障恢復。
    hdfs有一個檢查點機制,會把某個時間點內存中的Inode持久化到fsimage文件中,同時對每個操作記錄寫入到edit log中。
    SecNameNode則負責把namenode上的fsimage和edit log合并。
    HDFS原理及架構
    1,SecNN不斷地獲取NN上editlog的大小,如果太小則不做處理;
    2,如果editlog較大,則SecNN通知NN發起一次檢查點操作;
    3,NN會產出一個新的editlog——edit.new,此后對元數據的操作都寫入到edit.new文件中;
    4,而SecNN則通過http接口分別將NN上的fsimage和editlog拉取到SecNN節點上,并在內存中合并,并產出文件fsimage.ckpt;
    5,SecNN再主動通知NN鏡像已合并完成;
    6,NN通過http接口拉取過來fsimage.ckpt并覆蓋原來的fsimage,最后將edit.new改回edit

HDFS HA

https://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-name-node/index.html

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阳西县| 大竹县| 寿光市| 湘乡市| 望奎县| 夹江县| 临漳县| 安溪县| 阳朔县| 昌都县| 吴旗县| 黄平县| 疏勒县| 台中县| 报价| 大足县| 西峡县| 江油市| 黎城县| 平顺县| 买车| 图们市| 桓仁| 北票市| 金沙县| 普陀区| 垦利县| 喀什市| 沙田区| 许昌县| 皋兰县| 车险| 桐乡市| 进贤县| 海原县| 务川| 沧州市| 澜沧| 九龙县| 红河县| 孟州市|