1. 程式人生 > >大資料Hadoop學習之瞭解Hadoop

大資料Hadoop學習之瞭解Hadoop

關於大資料,一看就懂,一懂就懵。

大資料的發展也有些年頭了,如今正走在風口浪尖上,作為小白,我也來湊一份熱鬧。

大資料經過多年的發展,有著不同的實現方案和分支,不過,要說大資料實現方案中的翹楚,那就是Hadoop了,因其開源、穩定等因素,受到了業界的承認和歡迎,那我們就來窺視一下Hadoop。 大資料學習資料分享群119599574

一、什麼是Hadoop?

  1、 Hadoop是Apache軟體基金組織的一個頂級專案,是開發可靠、可擴充套件、分散式計算的開源軟體。

    Apache Hadoop軟體庫是一個框架,允許在使用簡單程式設計模型的計算機叢集上對大型資料集進行分散式處理。它旨在從單個伺服器擴充套件到數千臺機器,每臺機器都提供本地計算和儲存。庫本身不是依靠硬體來提供高可用性的,而是設計用於檢測和處理應用程式層的故障,因此在一組計算機上提供高可用性服務。

  2、Hadoop專案包括以下模組

  • Hadoop Common:支援其他Hadoop模組的常用工具。
  • Hadoop分散式檔案系統(HDFS):提供對應用程式資料的高吞吐量訪問的分散式檔案系統。
  • Hadoop YARN:作業排程和叢集資源管理的框架。
  • Hadoop MapReduce:用於並行處理大型資料集的基於YARN的系統

          關於這些模組的具體內容,在後期的文章中會一一詳細介紹。

  3、與Hadoop相關的其他Apache專案如下:

    Ambari:用於配置,管理和監控Apache Hadoop叢集的基於Web的工具,其中包括支援Hadoop HDFS,Hadoop MapReduce,Hive,HCatalog,HBase,ZooKeeper,Oozie,Pig和Sqoop。Ambari還提供了一個用於檢視叢集健康狀況的儀表板,如熱圖和視覺化檢視MapReduce,Pig和Hive應用程式以及以使用者友好的方式診斷其效能特徵的功能。

    Avro:資料序列化系統。

    Cassandra:可擴充套件的多主資料庫,無單點故障。

    Chukwa:用於管理大型分散式系統的資料收集系統。

    HBase:可擴充套件的分散式資料庫,支援大型表格的結構化資料儲存。

    Hive:提供資料摘要和即席查詢的資料倉庫基礎設施。  

    Mahout:可擴充套件的機器學習和資料探勘庫。

Pig:用於平行計算的高階資料流語言和執行框架。

Spark:一種用於Hadoop資料的計算引擎,具有快速性和通用性。Spark提供了一個簡單而富有表現力的程式設計模型,支援各種應用,包括ETL,機器學習,流處理和圖形計算。

Tez:一種基於Hadoop YARN的通用資料流程式設計框架,它提供了強大且靈活的引擎來執行任意DAG的任務來處理批量和互動式用例的資料。Tez被Hadoop,Pig和Hadoop生態系統中的其他框架以及其他商業軟體(例如ETL工具)所採用,以替代Hadoop MapReduce作為底層執行引擎。

ZooKeeper:分散式應用程式的高效能協調服務。

  這就是Hadoop,一個動物園,提供了一些基礎設施,比如Hadoop分散式檔案系統HDFS、yarn、MapReduce、Hadoop common;裡面有這許多動物,比如蜜蜂(hive)、豬(pig)、黑斑羚(impala);當然還要有動物園管理員(zookeeper),管理著動物園的生態平衡。

二、如何檢視Hadoop各版本

hadoop使用<major>.<minor>.<maintenance>格式來表示版本格式,即"<主要>.<次要>.<維護>",例如Hadoop2.7.3,則表示主要版本為2、次要版本為7、維護版本為3。當然,在版本格式後面還有其他字尾,比如“-alpha2”“-beta1”,表示API相容性保證和釋出質量。例如hadoop-3.0.0-alpha1和hadoop-3.0.0-beta1。

    1、主要版本用於引入實質性,可能不相容的更改。其示例包括在Hadoop 2中使用YARN和MapReduce 2替換MapReduce 1,以及在Hadoop 3中將所需的Java執行時版本從JDK7更改為JDK8,主要版本標誌著有重大更新。

    2、次要版本用於在主要發行版中引入新的相容功能。

    3、維護版本包括錯誤修復或低風險更改。

  瞭解上述這些之後,可以通過Hadoop各版本名稱來判斷Hadoop的版本重要性,在學習或者專案中選擇相應的版本來使用,不過,選擇穩定版能夠減少許多不可預知的錯誤,Hadoop各版本文件首頁都會介紹該版本是否是穩定版。大資料學習資料分享群119599574