十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問題一站解決
這篇文章主要講解了“NameNode工作機(jī)制和DataNode副本工作機(jī)制原理”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“NameNode工作機(jī)制和DataNode副本工作機(jī)制原理”吧!
成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)服務(wù)團(tuán)隊(duì)是一支充滿著熱情的團(tuán)隊(duì),執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時(shí)竭誠(chéng)為客戶提供服務(wù)是我們的理念。創(chuàng)新互聯(lián)建站把每個(gè)網(wǎng)站當(dāng)做一個(gè)產(chǎn)品來(lái)開發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!
NameNode(以下簡(jiǎn)稱NN)的工作機(jī)制:
1、用戶上傳數(shù)據(jù)的操作保存內(nèi)存緩存中,同時(shí)往edits.log文件寫入
2、edits.log文件是一個(gè)臨時(shí)的日志文件,且隨著edits.log文件達(dá)到一定大小之后會(huì)將數(shù)據(jù)寫入到另一個(gè)edits.log2文件,因此會(huì)產(chǎn)生多個(gè)edits.log小文件
3、多個(gè)edits.log小文件通過(guò)SecondaryNameNode(以下簡(jiǎn)稱SN)節(jié)點(diǎn)最終保存在本地的fsimage文件中的
4、NN每隔一段時(shí)間向SN發(fā)送checkpoint請(qǐng)求(fsimage和edits.log的合并)
5、SN從NN上下載fsimage和edits.log文件,然后請(qǐng)求edits.log文件更改文件名為edits.new
6、SN將fsimage和edits.log在內(nèi)存合并運(yùn)算、整合,生成新的fsimage.checkpoint,通知NN
7、NN接到通知后從SN下載fsimage.checkpoint
8、NN將fsimage.checkpoint和edits.new文件改回原來(lái)的名字
DataNode(以下簡(jiǎn)稱DN)的副本生成機(jī)制:
DN采用pipeline(管道)機(jī)制對(duì)數(shù)據(jù)進(jìn)行副本的復(fù)制,客戶端從提交到DN時(shí)只有一個(gè)副本,DN根據(jù)NN傳來(lái)的各個(gè)主機(jī)形成一個(gè)管道,一旦有數(shù)據(jù)往DN的第一個(gè)節(jié)點(diǎn)傳輸數(shù)據(jù)時(shí),DN就會(huì)往管道內(nèi)的其他DN節(jié)點(diǎn)異步通過(guò)網(wǎng)絡(luò)復(fù)制數(shù)據(jù),只有當(dāng)所有節(jié)點(diǎn)拷貝完成,這個(gè)管道才算成功,否則DN會(huì)向NN通知復(fù)制副本失敗,NN接收到DN失敗請(qǐng)求,會(huì)根據(jù)拷貝好的成功的節(jié)點(diǎn)和失敗的節(jié)點(diǎn)做一個(gè)調(diào)整,重新形成新的管道(例如:有3個(gè)節(jié)點(diǎn)在傳輸,假如3個(gè)節(jié)點(diǎn)傳輸失敗,這個(gè)管道就失敗了,NN在重新選擇的時(shí)候會(huì)將傳輸成功的第2個(gè)節(jié)點(diǎn)與其他非原來(lái)第3個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)再次形成管理進(jìn)行副本的復(fù)制)
感謝各位的閱讀,以上就是“NameNode工作機(jī)制和DataNode副本工作機(jī)制原理”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)NameNode工作機(jī)制和DataNode副本工作機(jī)制原理這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!