天天看點

大資料開發面試幹貨——Hadoop分布式檔案系統:HDFS

作者:積極的像風一樣自由

很多人不知道,大資料與Hadoop、HDFS有什麼關系。

Hadoop是一個開源的大資料分析軟體,Hadoop的架構最核心的設計就是:HDFS和MapReduce。其中HDFS為海量的資料提供了存儲,MapReduce為海量的資料提供了計算。

大資料開發面試幹貨——Hadoop分布式檔案系統:HDFS

HDFS(Hadoop分布式檔案系統,Hadoop Distributed File System)是一個高度容錯性的系統,适合部署在廉價的機器上,能提供高吞吐量的資料通路,非常适合大規模資料集上的應用。

HDFS 适用場景:大檔案存儲、流式資料通路。 HDFS 不适用場景:大量小檔案、随機讀寫、低延遲讀寫(實時讀寫)、經常需要修改;

HDFS采用了主從(Master/Slave)結構模型:一個HDFS叢集是由一個NameNode和若幹個DataNode組成的。

大資料開發面試幹貨——Hadoop分布式檔案系統:HDFS

主節點NameNode:管理讀寫請求(不是執行讀寫請求),管理命名空間,支援 HA 高可靠機制,管理中繼資料。

從節點DataNode:執行讀寫請求,存儲資料庫(存放真實資料),運作多個執行個體,周期性上報資料塊資訊給NameNode。

HDFS 的 Block:預設儲存3份;資料塊大小:128MB。Block 越大,尋址開銷越小,開銷越小越好。

HDFS 的shell 指令:删除(-rm),上傳(-put),下載下傳(-get),檢視檔案内容(-cat),檢視目錄(-ls),建立目錄(-mkdir)。

HDFS 應對單點故障措施:采用主、備NameNode 機制,用于故障恢複,和是否有資料副本無關。

大資料開發面試幹貨——Hadoop分布式檔案系統:HDFS

繼續閱讀