第一次啟動(dòng)HDFS需對(duì)NameNode(簡(jiǎn)稱NN)格式化 bin/hadoop namenode -format HDFS動(dòng)態(tài)添加和刪除DataNode(簡(jiǎn)稱DN),DN無(wú)需格式化而是在第一次啟動(dòng)時(shí)創(chuàng)建存儲(chǔ)目錄。DN可以管理多個(gè)目錄,配置${dfs.data.dir} = /data/datanode,/data2/datanode 1.1 ${dfs.data
第一次啟動(dòng)HDFS需對(duì)NameNode(簡(jiǎn)稱NN)格式化
bin/hadoop namenode -format
HDFS動(dòng)態(tài)添加和刪除DataNode(簡(jiǎn)稱DN),DN無(wú)需格式化而是在第一次啟動(dòng)時(shí)創(chuàng)建存儲(chǔ)目錄。DN可以管理多個(gè)目錄,配置${dfs.data.dir} = "/data/datanode,/data2/datanode"
該目錄一般有4個(gè)目錄和2個(gè)文件。
其中in_use.lock文件是在DataNode節(jié)點(diǎn)啟動(dòng)之后產(chǎn)生的,其中各個(gè)目錄的作用如下:
blocksBeingWritten:該文件夾保存著當(dāng)前正在”寫“的數(shù)據(jù)塊。
current:保存著HDFS文件系統(tǒng)中的數(shù)據(jù)塊,這些數(shù)據(jù)塊是成功提交到HDFS中的數(shù)據(jù)塊。detach:用于配合數(shù)據(jù)節(jié)點(diǎn)升級(jí),共數(shù)據(jù)塊分離操作保存臨時(shí)工作文件。
tmp:該文件夾保存著當(dāng)前正在”寫“的數(shù)據(jù)塊,和blockBeingWritten文件夾的區(qū)別是,blockBeingWritten中的數(shù)據(jù)塊寫操作由客戶端發(fā)起,tmp中的寫操作由數(shù)據(jù)塊復(fù)制引發(fā),另一個(gè)數(shù)據(jù)節(jié)點(diǎn)正在發(fā)送數(shù)據(jù)到數(shù)據(jù)塊中。
storage:0.13版本以前的Hadoop使用storage文件作為數(shù)據(jù)塊的保存目錄,和現(xiàn)在的目錄結(jié)構(gòu)不兼容,這個(gè)文件用于防止過(guò)舊的Hadoop版本在新的目錄結(jié)構(gòu)上啟動(dòng),損壞系統(tǒng)。
in_use.lock:表明目錄已經(jīng)被使用,停止數(shù)據(jù)節(jié)點(diǎn),該文件會(huì)消失,通過(guò)in_use.lock文件,數(shù)據(jù)節(jié)點(diǎn)可以保證獨(dú)自占用該目錄,防止兩個(gè)數(shù)據(jù)節(jié)點(diǎn)示例共享一個(gè)目錄,造成混亂。
current目錄是數(shù)據(jù)節(jié)點(diǎn)中最重要的一個(gè)目錄,它用于存放數(shù)據(jù)塊,該目錄中既包含目錄,也包含文件,其中文件有兩種類型:
HDFS數(shù)據(jù)塊,保存著HDFS文件的內(nèi)容;
用于保存數(shù)據(jù)塊的校驗(yàn)信息的校驗(yàn)信息文件,以meta后綴名標(biāo)識(shí);
VERSION文件是一個(gè)Java屬性文件,包含了HDFS的版本信息。
current目錄如下圖所示:
在這個(gè)圖片中,沒(méi)有目錄,是因?yàn)楫?dāng)前的數(shù)據(jù)節(jié)點(diǎn)中的文件塊的數(shù)量較少,只有當(dāng)目錄中存儲(chǔ)的數(shù)據(jù)塊增加到一定規(guī)模時(shí),子目錄名以subdir為前綴,然后后面加上目錄編號(hào),數(shù)據(jù)節(jié)點(diǎn)會(huì)創(chuàng)建一個(gè)新目錄,用于保存新的塊及元數(shù)據(jù)。目錄中的數(shù)據(jù)塊數(shù)達(dá)到64時(shí),便會(huì)創(chuàng)建子目錄,并形成一個(gè)更寬的目錄結(jié)構(gòu),同時(shí)\統(tǒng)一父目錄下最多會(huì)創(chuàng)建64個(gè)子目錄,所以在默認(rèn)配置下,一個(gè)目錄下最多只有64個(gè)文件塊(128個(gè)文件)和64個(gè)子目錄。這種目錄管理方式既保證了目錄深度不會(huì)太深,而影響檢索文件性能,同時(shí)也避免了目錄保存大量數(shù)據(jù)塊,確保每個(gè)目錄中的文件塊是可控的。
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com