1. 程式人生 > >三十二、HDFS產生背景、概念、優缺點、塊大小

三十二、HDFS產生背景、概念、優缺點、塊大小

                             HDFS產生背景、概念、優缺點、塊大小

1、HDFS概念

      HDFS,它是一個檔案系統,用於儲存檔案,通過目錄樹來定位檔案;其次,它是分散式的,由很多伺服器聯合起來實現其功能,叢集中的伺服器有各自的角色。       HDFS的設計適合一次寫入,多次讀出的場景,且不支援檔案的修改。適合用來做資料分析,並不適合用來做網盤應用

2、HDFS組成

1)HDFS叢集包括,NameNode和DataNode以及Secondary Namenode。 2)NameNode負責管理整個檔案系統的元資料,以及每一個路徑(檔案)所對應的資料塊資訊

。(管理元資料) 3)DataNode 負責管理使用者的檔案資料塊,每一個數據塊都可以在多個datanode上儲存多個副本。(管理資料塊) 4)Secondary NameNode用來監控HDFS狀態的輔助後臺程式,每隔一段時間獲取HDFS元資料的快照。(元資料的快照)

3、HDFS優缺點

優點:

1)高容錯性:資料自動儲存多個副本,當一個副本丟失後,可以自動回覆。
2)適合大資料處理:檔案規模大(個數多)、資料規模大(資料大小)
3) 流式資料訪問:一次寫入,多次讀取,不能修改,只能追加。保證資料一致性。
4) 構建成本低:可以構建在廉價的機器上。

缺點:

1)不適合做低延遲資料訪問,比如毫秒級的資料訪問是做不到的。
2)無法高效的對大量小檔案進行儲存。
3)無法併發寫入和隨機修改。

4、 HDFS 檔案塊大小

在這裡插入圖片描述

      HDFS中的檔案在物理上是分塊儲存(block),塊的大小可以通過配置引數( dfs.blocksize)來規定,預設大小在hadoop2.x版本中是128M,老版本中是64M

      HDFS的塊比磁碟的塊大,其目的是為了最小化定址開銷。如果塊設定得足夠大,從磁碟傳輸資料的時間會明顯大於定位這個塊開始位置所需的時間。因而,傳輸一個由多個塊組成的檔案的時間取決於磁碟傳輸速率。

      如果定址時間約為10ms,而傳輸速率為100MB/s,為了使定址時間僅佔傳輸時間的1%,我們要將塊大小設定約為100MB。預設的塊大小128MB。 塊的大小:10ms100100M/s = 100M