1?HDFS
1.1功能?HDFS 是 Hadoop 的分布式文件系統,用于存儲和管理海量數據。它具有高容錯性、高吞吐量和可擴展性,能夠在多個節點上存儲和管理大規模數據
1.2架構:采用主從架構,由一個 NameNode 和多個 DataNode 組成。NameNode 負責管理文件1統的元數據,DataNode 負責存儲實際的數據.
1.3工作原理:將大文件分割成多個固定大小的塊(默認 128MB),并將這些塊存儲在不同的 DataNode 上,每個塊會存儲多個副本(默認 3 個副本),以提高數據的可靠性和容錯性。當需要讀取文件時,客戶端會從 NameNode 獲取文件的塊信息,然后直接從 DataNode 讀取數據。
2.YARN(Yet Another Resource Negotiator)
2.1功能:YARN 是 Hadoop 的資源管理系統,負責管理和調度集群中的計算資源,使得多個應用程序可以共享集群資源。
2.2架構:主要由 ResourceManager 和 NodeManager 組成。ResourceManager 負責整個集群的資源管理和調度,NodeManager 負責每個節點的資源管理和監控。
2.3工作原理:當應用程序提交到 YARN 時,ResourceManager 會根據資源隊列的配置和應用程序的需求,將資源分配給 ApplicationMaster。ApplicationMaster 負責管理應用程序的生命周期,包括任務的分配、啟動和監控。NodeManager 負責管理節點上的資源,根據 ResourceManager 的指示,分配和管理節點上的計算資源,并在需要時啟動和停止容器。
3.MapReduce
3.1功能:MapReduce 是 Hadoop 的編程模型和框架,用于處理大規模數據集。它將大數據處理任務分解為多個小任務,并在集群中的多個節點上并行執行這些小任務。
3.2工作原理:MapReduce 任務分為 Map 階段和 Reduce 階段。Map 階段負責處理輸入數據并產生一系列的鍵值對,Reduce 階段負責對 Map 階段輸出的鍵值對進行匯總和整理。在執行過程中,MapReduce 框架會自動進行任務的分割、調度和同步。開發人員只需要編寫 Map 和 Reduce 函數即可完成數據處理任務,而無需關心底層細節。