發布時間: 2022-03-09 14:35:54
將Hadoop稱作框架其實并不準確,更多人喜歡稱Hadoop為生態圈,因為它除了有計算和存儲功能外還提供了相當多的組件,來完成大數據方方面面的工作。
Hadoop生態圈的組件非常多,圖1所示為Hadoop 1.0環境中的生態圈組成,爬蟲工具、集群化存儲、工作流、數據流、交互式腳本、NoSQL數據庫、數據倉庫、數據挖掘框架,幾乎是應有盡有。
圖1 Hadoop生態圈
現在在生產環境中,通常使用Hadoop 2.0環境。通常說的Hadoop只是其中最核心的框架,主要分為以下4個部分。
(1)Hadoop Common:這是Hadoop的核心功能,是對其他的Hadoop模塊做支撐的,里面包含了大量的對底層文件、網絡的訪問,對數據類型的支持,以及對象的序列化、反序列化的操作支持等。
(2)Hadoop Distributed File System(HDFSTM):Hadoop分布式文件系統,也就是上面提到的HDFS,它用于存儲大量的數據。
(3)Hadoop YARN:一個任務調度和資源管理的框架。
(4)Hadoop MapReduce:基于YARN的并行大數據處理組件。請注意Hadoop 1.0和Hadoop 2.0的區別,如圖2所示。Hadoop 1.0環境的MapReduce是直接運行的,Hadoop 2.0環境的MapReduce依賴于YARN框架,在YARN框架啟動后,MapReduce在需要運行的時候把任務提交給YARN框架,讓YARN框架來分配資源擇機運行,這是兩者較大的區別。
圖2 Hadoop 1.0和Hadoop 2.0
一般把Hadoop Common、HDFS、YARN、MapReduce這四部分統稱為Hadoop框架,而在Hadoop生態環境中還有進行SQL化管理HDFS的Hive組件,支持OLTP業務的NoSQL分布式數據庫HBase組件,進行圖形界面管理的Ambari組件等,Hadoop生態圈會增加越來越多的軟件,提高軟件的便利性。
上一篇: MapReduce原理
下一篇: linux文件與目錄基本命令