HadoopNamenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么

這篇文章將為大家詳細講解有關(guān)Hadoop Namenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

成都創(chuàng)新互聯(lián)公司從2013年成立,先為常山等服務(wù)建站,常山等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為常山企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

我們都知道namenode是用來存儲元數(shù)據(jù)的,他并不是用來存儲真正的數(shù)據(jù)。

那么他的元數(shù)據(jù)怎么進行持久化呢!

FsImage

文件系統(tǒng)的鏡像文件叫fsImage,它包括了文件和塊信息的映射,還有文件系統(tǒng)的屬性信息。

datanode啟動的過程中 首先會向namenode注冊塊信息,這些塊信息就是存儲在namenode的FsImage中的。

EditLog

對于文件系統(tǒng)的每一次更改,例如,增加文件,刪除文件等操作都會被寫入Edit Log 這個問題件中。

同樣的,修改文件系統(tǒng)的副本因子配置,也會被寫入Edit Log文件。

EditLog 文件和fsImage文件都存儲在文件系統(tǒng)的本地路徑中。

namenode在內(nèi)存中存儲了,整個文件系統(tǒng)的鏡像和文件塊映射信息。

元數(shù)據(jù)是可以被合并的,因此namenode有4GB的內(nèi)存,就足以存儲巨量的文件和目錄。

namenode啟動過程中發(fā)生了什么呢?

1、從硬盤讀取FsImage 和EditLog文件。

2、將EditLog文件中的所有操作信息寫入FsImage中。產(chǎn)生一個新的FsImage文件- - - -這一操作被稱為checkpoint

3、產(chǎn)生一個新的空的EditLog文件

namenode啟動的時候checkponit

Hadoop Namenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么

namenode運行過程中和fsImage 與 EditLog的交互操作

Hadoop Namenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么

SecondaryNamenode
很多人理解的SecondaryNamenode的作用就是對namenode的備份,當namenode宕機了, 可以快速用secondarynamenode 恢復(fù)回來。
其實 SecondaryNamenode的重要作用,是定期合并FsImage和EditLog文件。

考慮一個場景。當我們的namenode宕機了。我們需要讀取EditLog文件合并fsImage文件做恢復(fù)。如果這個EditLog文件,非常非常大,那么可能僅僅是讀EditLog文件,就需要很長很長時間,以至于我們的故障恢復(fù)效果很差。
所以SecondaryNameNode,定期合并FsImage和EditLog文件,并替換namenode上的舊的FsImage文件,生成新的EditLog文件,替換原來的舊的EditLog文件。這樣可以保證SecondaryNameNode上的文件為最近的信息。當發(fā)生宕機時候,可以快速恢復(fù)。
Hadoop Namenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么

關(guān)于Hadoop Namenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

標題名稱:HadoopNamenode元數(shù)據(jù)持久化機制與SecondaryNamenode的作用是什么
URL分享:http://muchs.cn/article28/pioejp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、企業(yè)建站網(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)

成都網(wǎng)站建設(shè)公司