HDFS 文件系统NameSpace、副本机制
文件系統NameSpace
HDFS支持傳統的層次型目錄結構,用戶或客戶端可以創建目錄,并且可以存儲文件在這些目錄中。HDFS的這種目錄層次結構與其他的文件系統非常類似,可以進行創建文件、移動文件、刪除文件等操作。還支持不同用戶不同目錄訪問權限。
 NameNode維護的是文件系統的NameSpace,對文件系統的任何修改或者屬性的修改都會被NameNode記錄下來,應用程序可以指定文件的副本個數,每個文件都有自己對應的副本系數,這個副本系數也存儲在NameNode上。
HDFS副本機制
上面介紹了HDFS的副本系數,那么到底是如何實現副本的?
 HDFS可以在集群中存儲非常大的文件,將每個文件都存儲一系列的blocks。如果一個文件大于128MB,那么會自動切分這個文件。為了容錯,這些Block是以副本的形式存儲在集群中。每個文件都有可以設置Block的大小和副本的個數。
 每個文件所有的Block大小除了最后一個BLock其余Block的大小都是固定的。
 HDFS在文件創建時就可以指定副本系數,也可以在之后進行改變。
 
 如上圖所示,NameNode存儲了FileName,numReplicas,block-ids。
 /users/sameerp/data/part-0這個文件的副本系數是2,block-id是1和3
 /users/sameerp/data/part-1這個文件的副本系數是3,block-id分別是2、4和5
 當某臺節點掛掉之后,數據依舊可以正常訪問。
總結
以上是生活随笔為你收集整理的HDFS 文件系统NameSpace、副本机制的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: HDFS(二)HDFS架构
- 下一篇: HDFS上传文件报错java.lang.
