1. 程式人生 > >hadoop學習資料-04-HDFS特點

hadoop學習資料-04-HDFS特點

  1. 架構圖

    HDFS為了保證資料儲存的可靠性和讀取效能,對資料進行切塊後進行復制並存儲在叢集的多個節點中 。
    HDFS中存在一個名位元組點NameNode和多個數據節點DateNode
           NameNode
                            儲存元資料資訊
                            元資料儲存在記憶體/磁碟中
                            儲存檔案、block、datanode 之間的對映關係
          DateNode
                            儲存block內容
                            儲存在磁碟中
                            維護了block  的id到檔案的對映關係
  2. HDFS優點
    1.支援超大檔案。
     超大檔案在這裡指的是幾百M,幾百DB,甚至幾TB大小的檔案。一般來說hadoop的檔案系統會儲存Tb級別或者PB級別的資料。所以在企業的應用中,資料節點有可能有上千個。
    2.檢測和快速應對硬體故障
    在叢集的環境中,硬體故障是常見的問題。因為有上千臺伺服器來連線在一起,這樣會導致高故障率。因此故障檢測和自動恢復是hdfs檔案系統的一個設計目標。
    3.流式資料訪問:
       Hdfs的資料處理規模比較大,應用一次需要訪問大量的資料,同時這些應用一般都是批量處理,而不是使用者互動式處理。
    應用程式能以流的形式訪問資料集。主要的時資料的吞吐量,而不是訪問速度。
    4.簡化的一致性模型
       大部本hdfs操作檔案時,需要一次寫入,多次讀取。在hdfs中,一個檔案一旦經過建立、寫入、關閉後,一般就不需要修改了。這樣簡單的一致性模型,有利於提高吞吐量。
    5.高容錯性:
       資料自動儲存多個副本,副本丟失後自動回覆。
    6.可構建在廉價機器上:
       構建再廉價機器上可以輕鬆的通過擴充套件機器數量來近乎線性的提高叢集儲存能力。
  3. HDFS缺點
     1.低延遲資料訪問:
        如和使用者進行互動的應用,需要資料再毫秒或秒的範圍內得到響應。由於hadoop針對高資料吞吐量做了優化,犧牲了獲取資料的延遲,所有對於低延遲來說,不適合用hadoop來做。
     2.大量的小檔案:
       Hdfs支援超大的檔案,是通過資料分佈在資料節點(datanode),資料的元資料儲存在名位元組點(namenode)上。名位元組點的記憶體大小,決定了hdfs檔案系統可儲存的檔案數量。雖然現在的系統記憶體都比較大,但大量的小檔案還是會影響名位元組點的效能。
     3.多使用者寫入檔案、修改檔案:
       Hdfs的檔案只能有一次寫入,不支援修改和追加寫入(2.0版本支援追加),也不支援修改。只有這樣資料的吞吐量才能大。
     4.不支援超強的事物:
      沒有像關係型資料庫那樣,對事物有強有力的支援。