Hadoop - HDFS 概述



Hadoop 檔案系統是使用分散式檔案系統設計開發的。它執行在商用硬體上。與其他分散式系統不同,HDFS 具有高度容錯性,並且使用低成本硬體設計。

HDFS 儲存大量資料並提供更輕鬆的訪問。為了儲存如此龐大的資料,檔案儲存在多臺機器上。這些檔案以冗餘方式儲存,以在發生故障時防止系統可能的資料丟失。HDFS 還使應用程式能夠進行並行處理。

HDFS 的特點

  • 它適用於分散式儲存和處理。
  • Hadoop 提供了一個命令介面來與 HDFS 互動。
  • NameNode 和 DataNode 的內建伺服器幫助使用者輕鬆檢查叢集的狀態。
  • 對檔案系統資料的流式訪問。
  • HDFS 提供檔案許可權和身份驗證。

HDFS 架構

以下是 Hadoop 檔案系統的架構。

HDFS Architecture

HDFS 遵循主從架構,它包含以下元素。

NameNode

NameNode 是包含 GNU/Linux 作業系統和 NameNode 軟體的商用硬體。它是一種可以在商用硬體上執行的軟體。擁有 NameNode 的系統充當主伺服器,並執行以下任務:

  • 管理檔案系統名稱空間。

  • 規範客戶端對檔案的訪問。

  • 它還執行檔案系統操作,例如重新命名、關閉和開啟檔案和目錄。

DataNode

DataNode 是包含 GNU/Linux 作業系統和 DataNode 軟體的商用硬體。叢集中的每個節點(商用硬體/系統)都將有一個 DataNode。這些節點管理其系統的資料儲存。

  • DataNode 根據客戶端請求對檔案系統執行讀寫操作。

  • 它們還根據 NameNode 的指示執行塊建立、刪除和複製等操作。

通常,使用者資料儲存在 HDFS 的檔案中。檔案系統中的檔案將被分成一個或多個段,並/或儲存在各個資料節點中。這些檔案段稱為塊。換句話說,HDFS 可以讀取或寫入的最小資料量稱為塊。預設塊大小為 64MB,但可以根據需要在 HDFS 配置中進行更改。

HDFS 的目標

故障檢測和恢復 - 由於 HDFS 包含大量商用硬體,因此元件故障很常見。因此,HDFS 應該具有快速且自動的故障檢測和恢復機制。

海量資料集 - HDFS 應該每個叢集擁有數百個節點來管理具有海量資料集的應用程式。

資料就近儲存 - 當計算發生在資料附近時,可以有效地完成請求的任務。尤其是在涉及海量資料集的情況下,它可以減少網路流量並提高吞吐量。

廣告