1.背景
為了解決超大文件的存儲和管理看彼,應(yīng)運(yùn)而生的系統(tǒng)塘安,HDFS是一個<u style="box-sizing: border-box;">分布式文件系統(tǒng)</u>
2.定義
**HDFS適用于一次存儲,多次讀取且不支持修改</u>社搅,適合做數(shù)據(jù)分析,不適合做網(wǎng)盤應(yīng)用朋蔫。
3.優(yōu)缺點(diǎn)
3.1 優(yōu)點(diǎn)
-
高容錯性
數(shù)據(jù)自動保存多個副本罚渐,通過增加副本的形式,提高容錯性
某個副本丟失后驯妄,塔可以自動的恢復(fù)(再另一個節(jié)點(diǎn)上重新創(chuàng)建一份副本)
-
適合處理大數(shù)據(jù)
數(shù)據(jù)規(guī)模:能夠達(dá)到GB荷并、TB甚至是PB級別的數(shù)據(jù)
文件規(guī)模:能夠處理百萬規(guī)模以上的文件數(shù)量
可構(gòu)建在廉價(jià)的機(jī)器上,通過多副本特性青扔,提高可靠性
3.2缺點(diǎn)
不適合低延時(shí)數(shù)據(jù)的訪問
-
無法高效的處理小文件(文件塊大小默認(rèn)128G
存儲大量小文件源织,會占用NameNode大量內(nèi)存來存儲文件目錄和塊信息
小文件存儲的尋址時(shí)間甚至或超過讀取時(shí)間
-
不支持文件的并發(fā)寫入,不允許多個線程同時(shí)寫
[圖片上傳失敗...(image-289ff3-1589880795746)]
僅支持?jǐn)?shù)據(jù)的追加微猖,不支持文件的隨機(jī)修改
4.Hdfs架構(gòu)組成
[圖片上傳失敗...(image-f5a1ce-1589880795746)]******
5.Hdfs 文件塊大小*重點(diǎn)
hdfs在物理中是通過塊存儲的谈息,2.x版本默認(rèn)大小128M,老版本是64M凛剥。塊的大小可以通過(dfs.blocksize)參數(shù)來控制侠仇。
******[圖片上傳失敗...(image-25375b-1589880795746)]******
************
******6.Hdfs 寫數(shù)據(jù)流程******
************
-
******NameNode會根據(jù)節(jié)點(diǎn)距離和一定負(fù)載策略來決定給客戶端返回哪些dataNode進(jìn)行寫入******
******節(jié)點(diǎn)距離:兩個節(jié)點(diǎn)到達(dá)共同祖先的距離總和******
******[圖片上傳失敗...(image-113ddd-1589880795746)]******
-
******機(jī)架感知 - 副本節(jié)點(diǎn)的選擇******
- ******主要考慮兩點(diǎn),節(jié)點(diǎn)距離產(chǎn)生的IO效率,和容災(zāi)安全性******
******
******7.Hdfs - 讀數(shù)據(jù)流程******
************