欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

千鋒扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)之Hadoop入門

2019-07-15 14:46:56 4509瀏覽

今天千鋒扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)老師給大家分享一篇關(guān)于大數(shù)據(jù)技術(shù)之Hadoop入門的詳細介紹,比如簡單的說一下HDFS中的SecondaryNameNode副節(jié)點和持久化,下面我們一起來看一下吧。



一、SNN

SNN的主要工作

(1)SecondaryNameNode詢問NameNode是否需要checkpoint。

直接帶回NameNode是否檢查結(jié)果。

(2)SecondaryNameNode請求執(zhí)行checkpoint。

(3)NameNode滾動正在寫的edits日志。

(4)將滾動前的編輯日志和鏡像文件拷貝到SecondaryNameNode。

(5)SecondaryNameNode加載編輯日志和鏡像文件到內(nèi)存,并合并。

(6)生成新的鏡像文件fsimage.chkpoint。

(7)拷貝fsimage.chkpoint到NameNode。

(8)NameNode將fsimage.chkpoint重新命名成fsimage。

二、持久化

了解到SNN的主要工作之后呢,我們就說一下SNN它和NN也就是Namenode的工作機制。

SNN和NN的工作機制圖



在NN掌握一批元數(shù)據(jù),(元數(shù)據(jù)就是描述數(shù)據(jù)的數(shù)據(jù))—存放在內(nèi)存里

硬盤內(nèi)存大便宜但是慢

內(nèi)存內(nèi)存小貴,但是快

2.1持久化是什么呢?

持久化:為了保證元數(shù)據(jù)的安全----將內(nèi)存中的數(shù)據(jù)存放到磁盤中

在當我們的集群因斷電等特殊原因產(chǎn)生問題的時候,問題解決,重新開機,會去磁盤上讀取元數(shù)據(jù),恢復(fù)到斷電前的狀態(tài)。

那么為什么說NN不能進行持久化呢?

其實我們即可以說NN可以做持久化,也可以說不可以做持久化。那么到底什么時候可以做持久化什么時候不可以做持久化呢?

NN可以做持久化:需求小,占用內(nèi)存小,不影響計算效率

NN不可以做持久化:是因為NN本身工作已經(jīng)很多,有可能在持久化的過程中宕機

備注:SNN永遠無法取代NN的位置,他只是NN的一個熱備。

(熱備:工作依舊可以進行,但還是能備份)

2.2Edits和Fsimage

Fsimage:namenode內(nèi)存中元數(shù)據(jù)序列化后形成的文件。

Edits:記錄客戶端更新元數(shù)據(jù)信息的每一步操作(可通過Edits運算出元數(shù)據(jù))。

為了方便了解畫了一個圖



namenode啟動時,先滾動edits并生成一個空的edits,然后加載edits和fsimage到內(nèi)存中,此時namenode內(nèi)存就持有最新的元數(shù)據(jù)信息。client開始對namenode發(fā)送元數(shù)據(jù)的增刪改查的請求,這些請求的操作首先會被記錄的edits中(查詢元數(shù)據(jù)的操作不會被記錄在edits中,因為查詢操作不會更改元數(shù)據(jù)信息),如果此時namenode掛掉,重啟后會從edits中讀取元數(shù)據(jù)的信息。然后,namenode會在內(nèi)存中執(zhí)行元數(shù)據(jù)的增刪改查的操作。

由于edits中記錄的操作會越來越多,edits文件會越來越大,導(dǎo)致namenode在啟動加載edits時會很慢,所以需要對edits和fsimage進行合并(所謂合并,就是將edits和fsimage加載到內(nèi)存中,照著edits中的操作一步步執(zhí)行,最終形成新的fsimage)。secondarynamenode的作用就是幫助namenode進行edits和fsimage的合并工作。

secondarynamenode首先會詢問namenode是否需要checkpoint(觸發(fā)checkpoint需要滿足兩個條件中的任意一個,定時時間到和edits中數(shù)據(jù)寫滿了)。

持久化的觸發(fā)條件:超過3600或者edits(edits.log)的大小超過64M

直接帶回namenode是否檢查結(jié)果。secondarynamenode執(zhí)行checkpoint操作,首先會讓namenode滾動edits并生成一個空的edits,滾動edits的目的是給edits打個標記,以后所有新的操作都寫入edits,其他未合并的edits和fsimage會拷貝到secondarynamenode的本地,然后將拷貝的edits和fsimage加載到內(nèi)存中進行合并,生成fsimage.chkpoint,然后將fsimage.chkpoint拷貝給namenode,重命名為fsimage后替換掉原來的fsimage。namenode在啟動時就只需要加載之前未合并的edits和fsimage即可,因為合并過的edits中的元數(shù)據(jù)信息已經(jīng)被記錄在fsimage中。

總結(jié):持久化就是將NN的元數(shù)據(jù)寫入到磁盤中進行存儲,當NN掛了之后重啟得時候會去磁盤讀取相應(yīng)的元數(shù)據(jù),恢復(fù)集群的狀態(tài)-------(內(nèi)存斷電丟失)

發(fā)生斷電

持久化之前------再次啟動,讀取系統(tǒng)日志

持久化之后-------讀取磁盤中的數(shù)據(jù),恢復(fù)狀態(tài)

發(fā)生重復(fù)的斷電

NN和DN之間有一種通信機制叫做心跳機制------每個3秒,DN會向NN發(fā)送一次心跳,1min沒有心跳,則認為DN掛掉。

那么重復(fù)的斷電會進入安全模式:

恢復(fù)系統(tǒng)狀態(tài)

檢查DN的信息

對有問題的DN進行修復(fù)

1)在傳輸?shù)倪^程中斷電—數(shù)據(jù)丟失,如果數(shù)據(jù)特別重要,那只能提前進行預(yù)判,進行相應(yīng)的調(diào)整。

2)傳輸完成之后斷電

當我的集群重新恢復(fù)之后,NN會去讀取元數(shù)據(jù),對狀態(tài)進行相應(yīng)的恢復(fù)

3)若DN出現(xiàn)問題。在DN恢復(fù)之后,如果新的任務(wù),根據(jù)情況,確定是否將新的文件上傳



以上就是關(guān)于千鋒扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)之Hadoop入門的全部內(nèi)容,想要了解更多關(guān)于大數(shù)據(jù)開發(fā)方面內(nèi)容的小伙伴,請關(guān)注扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)官網(wǎng)、微信等平臺,扣丁學(xué)堂IT職業(yè)在線學(xué)習(xí)教育有專業(yè)的大數(shù)據(jù)講師為您指導(dǎo),此外扣丁學(xué)堂老師精心推出的大數(shù)據(jù)視頻教程定能讓你快速掌握大數(shù)據(jù)從入門到精通開發(fā)實戰(zhàn)技能??鄱W(xué)堂大數(shù)據(jù)學(xué)習(xí)群:209080834。


扣丁學(xué)堂微信公眾號                          Python全棧開發(fā)爬蟲人工智能機器學(xué)習(xí)數(shù)據(jù)分析免費公開課直播間


      【關(guān)注微信公眾號獲取更多學(xué)習(xí)資料】         【掃碼進入Python全棧開發(fā)免費公開課】



查看更多關(guān)于“大數(shù)據(jù)培訓(xùn)資訊”的相關(guān)文章>

標簽: 大數(shù)據(jù)培訓(xùn) 大數(shù)據(jù)視頻教程 大數(shù)據(jù)分析培訓(xùn) 大數(shù)據(jù)學(xué)習(xí)視頻 Hadoop生態(tài)圈 數(shù)據(jù)結(jié)構(gòu) 算法

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關(guān)村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部