Hadoop版本的選擇問題

自從2013年下半年開始,hadoop的版本開始了快速的更新換代,這和通訊和互聯網行業(ICT)的發展是密切相關的。隨着移動網絡的和寬帶網絡的覆蓋以及數據傳輸速率的提高,線上的數據有了爆炸式的增加。這種趨勢特別體如今大型的電商平臺如淘寶、京東、亞馬遜,海量數據的存儲和處理問題成爲了熱門話題,在這種形勢下分佈式的、雲化的解決方案應運而生,hadoop做爲大型分佈式存儲和處理的開源框架天然成爲了行業裏的熱點。如下是hadoop的官方簡介。html

Apache Hadoop軟件庫是一個框架,容許使用簡單的編程模型跨計算機集羣分佈式處理大型數據集。它旨在從單個服務器擴展到數千臺計算機,每臺計算機都提供本地計算和存儲。庫自己不是依靠硬件來提供高可用性,而是設計用於檢測和處理應用程序層的故障,從而在計算機集羣之上提供高可用性服務,每一個計算機均可能容易出現故障。數據庫

該項目包括如下模塊:apache

  • Hadoop Common:支持其餘Hadoop模塊的經常使用實用程序。
  • Hadoop分佈式文件系統(HDFS™):一種分佈式文件系統,可提供對應用程序數據的高吞吐量訪問。
  • Hadoop YARN:做業調度和集羣資源管理的框架。
  • Hadoop MapReduce:基於YARN的系統,用於並行處理大型數據集。

Apache的其餘Hadoop相關項目包括:編程

  • Ambari™:基於Web的工具,用於配置,管理和監控Apache Hadoop集羣,包括對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生態系統中的Hive™,Pig™和其餘框架以及其餘商業軟件(例如ETL工具)採用,以取代Hadoop™MapReduce做爲底層執行引擎。
  • ZooKeeper™:用於分佈式應用程序的高性能協調服務。

 

順應時代的發展,爲了跟上技術更新的節奏,許多數據分析和處理的中小型企業也想搭建一個hadoop生態圈,將其做爲從此數據存儲和處理的平臺的發展方向,所以須要先構建一個實驗測試環境,以便從此作系統轉移和處理業務的銜接類的工做。這一類企業的集羣節點不須要太多,從幾臺到十幾臺的樣子。在當下行業裏hadoop的應用已經成熟,hadoop有很是多的版本,就拿個人大學時代到如今來說,短短兩年學習的hadoop的版本和如今的相比已經有了比較多的改動,到企業中部署須要更加清晰的認識和學習新的技術。在這種狀況下,如何去選擇hadoop和搭建集羣?安全

經過在互聯網上普遍的閱讀,我發現了一篇較爲清晰的hadoop版本介紹,不過是隻更新到2016年末的,後來發現其實不嫌麻煩也能夠到hadoop官網上進行詳細的瞭解,hadoop的官網上有每一個版本更新的詳細信息。服務器

http://www.javashuo.com/article/p-vnuyywnv-bd.html    北漂程序猿的2.7及之前版本的介紹和推薦,他推薦的是2.6.x版本網絡

而如今已經出來2.8.x、2.9.x和3.x版本,每一個版本都新增了功能,可是我不肯定是否能用的上,因此在新型和穩定上須要作出考慮。在這裏能夠大概瞭解到更新的信息,具體的可參考http://hadoop.apache.org/架構

2018年8月8日:3.1.1版本可用 這是Apache Hadoop 3.1系列的第一個穩定版本。它包含自3.1.0以來的435個錯誤修復,改進和加強功能 建議用戶閱讀自3.1.0以來的主要變化概述。有關自上一個3.1.0版本以來的435個錯誤修復,改進和其餘加強功能的詳細信息,請查看發行說明和更新日誌,詳細說明自3.1.0以來的更改。 2018年5月31日:2.7.7版本可用 這是Apache Hadoop 2.7的維護版本。它涉及CVE-2018-8009。 2018年5月31日:3.0.3版本可用 這是Apache Hadoop 3.0系列的下一個版本。它包含自3.0.2以來的249個錯誤修復,改進和其餘加強功能。 鼓勵用戶閱讀自3.0.2以來的主要變化概述。對於自上次3.0.2版本的249 bug修復,改進和其它加強功能的詳細信息,請查看 發佈說明安迪 的changelog細節,由於3.0.2的變化。 2018年5月15日:2.8.4版本可用 這是Apache Hadoop 2.8系列的下一個版本。它包含自2.8.3以來的77個錯誤修復,改進和加強功能。 建議用戶閱讀Apache Hadoop 2.8的主要功能和改進的主要更改概述。有關自2.8.3版本以來的77個修復,改進和其餘加強功能的詳細信息,請查看 發行說明和 更改日誌。 2018年5月3日:版本2.9.1可用 這是Apache Hadoop 2.9系列的下一個版本。它包含自2.9.0以來的208個錯誤修復,改進和加強功能。 建議用戶閱讀Apache Hadoop 2.9的主要功能和改進的主要更改概述。有關自2.9.0發行版以來的208個修復,改進和其餘加強功能的詳細信息,請查看 發行說明和 更改日誌。 2018年4月16日:2.7.6版本可用 這是Apache Hadoop 2.7系列的下一個版本。 有關自上一版本2.7.5以來的46個錯誤修復和優化的完整列表,請參閱 Hadoop 2.7.6發行說明。它特別使POSIX組支持LDAP組映射服務。 2018年4月6日:3.1.0版本可用 這是Apache Hadoop 3.1系列的第一個版本。它包含自3.0.0以來的768個錯誤修復,改進和加強功能 建議用戶閱讀自3.0.0以來的主要更改概述。有關自上一個3.0.0版本以來的768個錯誤修復,改進和其餘加強功能的詳細信息,請查看發行說明和更新日誌詳細說明自3.0.0以來的更改。 2018年3月25日:3.0.1版本可用 這是Apache Hadoop 3.0系列的下一個版本。它包含自3.0.0以來的49個錯誤修復,改進和加強功能。 請注意:3.0.0以後不推薦使用3.0.0,由於HDFS-12990將NameNode默認RPC端口更改回8020。 建議用戶閱讀自3.0.0以來的主要更改概述。有關自上一個3.0.0版本以來的49個錯誤修復,改進和其餘加強功能的詳細信息,請查看發行說明和更新日誌詳細說明自3.0.0以來的更改。 2017年12月13日:通常可用3.0.0版 在四個alpha版本和一個beta版本以後,一般可使用3.0.0。3.0.0包含自3.0.0-beta1以來的302個錯誤修復,改進和其餘加強功能。總共有6242個問題做爲自2.7.0以來的3.0.0版本系列的一部分獲得修復。 建議用戶閱讀3.0.0 中主要更改的概述。GA 發佈說明和更新日誌詳細說明了自3.0.0-beta1以來的更改。 2017年12月12日:發佈2.8.3版 這是Apache Hadoop 2.8發佈系列的下一個版本。它包含自2.8.2以來的79個錯誤修復,改進和其餘加強功能。有關Apache Hadoop 2.8的主要功能和改進,請參閱: 主要更改概述。有關自上一個2.8.2版本以來的79個修復,改進和其餘加強功能的詳細信息,請檢查: 發行說明和 更改日誌 2017年11月17日:發佈2.9.0版 這是2.9版本系列中的第一個GA版本。它包括30個新功能,500個子任務,407個改進,790個Bug修復自2.8.2以來的新修復問題。有關Apache Hadoop 2.8.2的主要功能和改進,請參閱: 主要更改概述。有關自上一個2.8.2版本以來的790個錯誤修復,改進和其餘加強功能的詳細信息,請檢查: 發行說明和 更改日誌 請注意:儘管此版本已經在至關大的集羣上進行了測試,但生產用戶能夠等待後續的點發布,其中包含進一步穩定和下游採用的修復。 2017年10月24日:發佈2.8.2 這是2.8版本系列中的第一個GA版本。它包含自從2.8.1以來的315個錯誤修復,改進和其餘加強功能。有關Apache Hadoop 2.8的主要功能和改進,請參閱: 主要更改概述。有關自上一個2.8.1版本以來的315修復,改進和其餘加強功能的詳細信息,請檢查:發行說明和 更改日誌 2017年3月22日:2.8.0版本可用 Apache Hadoop 2.8.0包含許多重要功能和加強功能。有關主要功能和改進,請參閱: 2.8.0 中主要更改的概述。有關自上一個2.7.0版本以來的2917修復,改進和新功能的詳細信息,請檢查: 發行說明和 更改日誌 請注意,此版本還沒有準備好用於生產。經過測試和下游採用來解決關鍵問題。生產用戶應該等待2.8.1 / 2.8.2版本。 2016年10月8日:2.6.5版本可用 2.6線的點數發佈。 有關79個關鍵錯誤修復的列表以及自上一版本2.6.4以來, 請參閱 Hadoop 2.6.5發行說明。
2016年1月25日:2.7.2版(穩定版)可用 2.7線的點數發佈。
有關自上一版本2.7.1以來的155個錯誤修復和補丁的列表,請參閱 Hadoop 2.7.2發行說明。

在通過了解,除了Hadoop的原生版本以外,還有許多其餘版本的。這裏有爲清晰的介紹。框架

目前而言,不收費的Hadoop版本主要有三個(均是國外廠商),
分別是:Apache(最原始的版本,全部發行版均基於這個版本進行改進)、Cloudera版本(Cloudera’s Distribution Including Apache Hadoop,簡稱CDH)、Hortonworks版本(Hortonworks Data Platform,簡稱「HDP」),
對於國內而言,絕大多數選擇CDH版本,CDH和Apache版本主要區別以下:   (1)CDH對Hadoop版本的劃分很是清晰,只有兩個系列的版本,分別是cdh3和cdh4,分別對應第一代Hadoop(Hadoop 1.0)和第二代Hadoop(Hadoop 2.0),相比而言,Apache版本則混亂得多;比Apache hadoop在兼容性,安全性,穩定性上有加強。   (2)CDH3版本是基於Apache hadoop 0.20.2改進的,並融入了的patch,CDH4版本是基於Apache hadoop 2.X改進的,CDH老是並應用了Bug修復或者Feature的Patch,並比Apache hadoop同功能版本提前發佈,更新速度比Apache官方快。   (3)安全 CDH支持Kerberos安全認證,apache hadoop則使用簡陋的用戶名匹配認證   (4)CDH文檔清晰,不少採用Apache版本的用戶都會閱讀CDH提供的文檔,包括安裝文檔、升級文檔等。   (5)CDH支持Yum/Apt包,Tar包,RPM包,Cloudera Manager四種方式安裝,Apache hadoop只支持Tar包安裝。

另外說明一下,CDH分爲商業版和免費版,商業版另外提供了滾動升級的功能。還有一個徹底開源免費的hadoop集羣管理框架是Ambari,這裏有Ambari功能的詳細介紹。http://www.javashuo.com/article/p-dppfqhfz-dz.html  , Ambari集羣搭建手冊在這裏https://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/機器學習

以及在中國開源社區中,出現了商業化的DK免費版本和商用版本,說在性能和部署上都相對便捷,DKHadoop具體可瞭解的http://www.dksou.com/a/product/pro-11.html

在hadoop的選擇問題上,通過和他人的探討以及中和在官網、博客、貼吧的意見,我認爲推薦使用的原生版本有2.6.x、2.7.x和2.8.x的穩定版,集羣管理有Ambari和CDH。在選用原生版本的時候須要考慮各個組件的版本是否匹配,而使用CDH和Ambari在集羣部署上應該更爲可靠和便捷,能夠少走一些彎路。

相關文章
相關標籤/搜索