這篇文章主要講解了“Hadoop DataNode工作機制是怎樣的”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Hadoop DataNode工作機制是怎樣的”吧!
網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、微信小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了桐柏免費建站歡迎大家使用!
DataNode上數(shù)據(jù)塊以文件形式存儲在磁盤上,包括兩個文件,一個是數(shù)據(jù)本身,一個是數(shù)據(jù)塊元數(shù)據(jù)包括長度、校驗、時間戳;
DataNode啟動后向NameNode服務注冊,并周期性的向NameNode上報所有的數(shù)據(jù)塊元數(shù)據(jù)信息;
DataNode與NameNode之間存在心跳機制,每3秒一次,返回結(jié)果帶有NameNode給該DataNode的執(zhí)行命令,例如數(shù)據(jù)復制刪除等,如果超過10分鐘沒有收到DataNode的心跳,則認為該節(jié)點不可用。
通過hdfs-site.xml配置文件,修改超時時長和心跳,其中中的heartbeat.recheck.interval的單位為毫秒,dfs.heartbeat.interval的單位為秒。
<property> <name>dfs.namenode.heartbeat.recheck-interval</name> <value>600000</value> </property> <property> <name>dfs.heartbeat.interval</name> <value>6</value> </property>
當前機器的節(jié)點為hop01、hop02、hop03,在此基礎上新增節(jié)點hop04。
基本步驟
基于當前一個服務節(jié)點克隆得到hop04環(huán)境;
修改Centos7相關(guān)基礎配置,并刪除data和log文件;
啟動DataNode,即可關(guān)聯(lián)到集群;
該配置同步集群下服務,格式化啟動hdfs及yarn,上傳文件測試。
<property> <name>dfs.datanode.data.dir</name> <value>file:///${hadoop.tmp.dir}/dfs/data01,file:///${hadoop.tmp.dir}/dfs/data02</value> </property>
配置白名單,該配置分發(fā)到集群服務下;
[root@hop01 hadoop]# pwd /opt/hadoop2.7/etc/hadoop [root@hop01 hadoop]# vim dfs.hosts hop01 hop02 hop03
配置hdfs-site.xml,該配置分發(fā)到集群服務下;
<property> <name>dfs.hosts</name> <value>/opt/hadoop2.7/etc/hadoop/dfs.hosts</value> </property>
刷新NameNode
[root@hop01 hadoop2.7]# hdfs dfsadmin -refreshNodes
刷新ResourceManager
[root@hop01 hadoop2.7]# yarn rmadmin -refreshNodes
配置黑名單,該配置分發(fā)到集群服務下;
[root@hop01 hadoop]# pwd /opt/hadoop2.7/etc/hadoop [root@hop01 hadoop]# vim dfs.hosts.exclude hop04
配置hdfs-site.xml,該配置分發(fā)到集群服務下;
<property> <name>dfs.hosts.exclude</name> <value>/opt/hadoop2.7/etc/hadoop/dfs.hosts.exclude</value> </property>
刷新NameNode
[root@hop01 hadoop2.7]# hdfs dfsadmin -refreshNodes
刷新ResourceManager
[root@hop01 hadoop2.7]# yarn rmadmin -refreshNodes
HDFS存儲的特點,適合海量數(shù)據(jù)的大文件,如果每個文件都很小,會產(chǎn)生大量的元數(shù)據(jù)信息,占用過多的內(nèi)存,并且在NaemNode和DataNode交互的時候變的緩慢。
HDFS可以對一些小的文件進行歸檔存儲,這里可以理解為壓縮存儲,即減少NameNode的消耗,也較少交互的負擔,同時還允許對歸檔的小文件訪問,提高整體的效率。
創(chuàng)建兩個目錄
# 存放小文件 [root@hop01 hadoop2.7]# hadoop fs -mkdir -p /hopdir/harinput # 存放歸檔文件 [root@hop01 hadoop2.7]# hadoop fs -mkdir -p /hopdir/haroutput
上傳測試文件
[root@hop01 hadoop2.7]# hadoop fs -moveFromLocal LICENSE.txt /hopdir/harinput [root@hop01 hadoop2.7]# hadoop fs -moveFromLocal README.txt /hopdir/harinput
歸檔操作
[root@hop01 hadoop2.7]# bin/hadoop archive -archiveName output.har -p /hopdir/harinput /hopdir/haroutput
查看歸檔文件
[root@hop01 hadoop2.7]# hadoop fs -lsr har:///hopdir/haroutput/output.har
這樣就可以把原來的那些小文件塊刪除即可。
解除歸檔文件
# 執(zhí)行解除 [root@hop01 hadoop2.7]# hadoop fs -cp har:///hopdir/haroutput/output.har/* /hopdir/haroutput # 查看文件 [root@hop01 hadoop2.7]# hadoop fs -ls /hopdir/haroutput
如果開啟回收站功能,被刪除的文件在指定的時間內(nèi),可以執(zhí)行恢復操作,防止數(shù)據(jù)被誤刪除情況。HDFS內(nèi)部的具體實現(xiàn)就是在NameNode中啟動一個后臺線程Emptier,這個線程專門管理和監(jiān)控系統(tǒng)回收站下面的文件,對于放進回收站的文件且超過生命周期,就會自動刪除。
該配置需要同步到集群下的所有服務;
[root@hop01 hadoop]# vim /opt/hadoop2.7/etc/hadoop/core-site.xml # 添加內(nèi)容 <property> <name>fs.trash.interval</name> <value>1</value> </property>
fs.trash.interval=0,表示禁用回收站機制,=1表示開啟。
感謝各位的閱讀,以上就是“Hadoop DataNode工作機制是怎樣的”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對Hadoop DataNode工作機制是怎樣的這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
名稱欄目:HadoopDataNode工作機制是怎樣的
標題路徑:http://muchs.cn/article0/gddioo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、微信小程序、營銷型網(wǎng)站建設、電子商務、面包屑導航、搜索引擎優(yōu)化
聲明:本網(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)