Hadoop的概念、版本、發展史


Hadoop是什么?


Hadoop: 適合大數據的分布式存儲和計算平台
Hadoop不是指具體一個框架或者組件,它是Apache軟件基金會下用Java語言開發的一個開源分布式計算平台。實現在大量計算機組成的集群中對海量數據進行分布式計算。適合大數據的分布式存儲和計算平台。
Hadoop1.x中包括兩個核心組件:MapReduce和Hadoop Distributed File System(HDFS)
其中HDFS負責將海量數據進行分布式存儲,而MapReduce負責提供對數據的計算結果的匯總

Hadoop的起源

2003-2004年,Google公布了部分GFS和MapReduce思想的細節,受此啟發的Doug Cutting等人用2年的業余時間實現了DFS和MapReduce機制,使Nutch性能飆升。然后Yahoo招安Doug Gutting及其項目。
2005年,Hadoop作為Lucene的子項目Nutch的一部分正式引入Apache基金會。
2006年2月被分離出來,成為一套完整獨立的軟件,起名為Hadoop
Hadoop名字不是一個縮寫,而是一個生造出來的詞。是Hadoop之父Doug Cutting兒子毛絨玩具象命名的。
Hadoop的成長過程
Lucene–>Nutch—>Hadoop

總結起來,Hadoop起源於Google的三大論文
GFS:Google的分布式文件系統Google File System
MapReduce:Google的MapReduce開源分布式並行計算框架
BigTable:一個大型的分布式數據庫

演變關系
GFS—->HDFS
Google MapReduce—->Hadoop MapReduce
BigTable—->HBase

Hadoop發展史

Hadoop大事記
2004年— 最初的版本(現在稱為HDFS和MapReduce)由Doug Cutting和Mike Cafarella開始實施。
2005年12月— Nutch移植到新的框架,Hadoop在20個節點上穩定運行。
2006年1月— Doug Cutting加入雅虎。
2006年2月— Apache Hadoop項目正式啟動以支持MapReduce和HDFS的獨立發展。
2006年2月— 雅虎的網格計算團隊采用Hadoop。
2006年4月— 標准排序(10 GB每個節點)在188個節點上運行47.9個小時。
2006年5月— 雅虎建立了一個300個節點的Hadoop研究集群。
2006年5月— 標准排序在500個節點上運行42個小時(硬件配置比4月的更好)。
2006年11月— 研究集群增加到600個節點。
2006年12月— 標准排序在20個節點上運行1.8個小時,100個節點3.3小時,500個節點5.2小時,900個節點7.8個小時。
2007年1月— 研究集群到達900個節點。
2007年4月— 研究集群達到兩個1000個節點的集群。
2008年4月— 贏得世界最快1TB數據排序在900個節點上用時209秒。
2008年7月— 雅虎測試節點增加到4000個
2008年9月— Hive成為Hadoop的子項目
2008年11月— Google宣布其MapReduce用68秒對1TB的程序進行排序
2008年10月— 研究集群每天裝載10TB的數據。
2008年— 淘寶開始投入研究基於Hadoop的系統–雲梯。雲梯總容量約9.3PB,共有1100台機器,每天處理18000道作業,掃描500TB數據。
2009年3月— 17個集群總共24 000台機器。
2009年3月— Cloudera推出CDH(Cloudera’s Dsitribution Including Apache Hadoop)
2009年4月— 贏得每分鍾排序,雅虎59秒內排序500 GB(在1400個節點上)和173分鍾內排序100 TB數據(在3400個節點上)。
2009年5月— Yahoo的團隊使用Hadoop對1 TB的數據進行排序只花了62秒時間。
2009年7月— Hadoop Core項目更名為Hadoop Common;
2009年7月— MapReduce 和 Hadoop Distributed File System (HDFS) 成為Hadoop項目的獨立子項目。
2009年7月— Avro 和 Chukwa 成為Hadoop新的子項目。
2009年9月— 亞聯BI團隊開始跟蹤研究Hadoop
2009年12月—亞聯提出橘雲戰略,開始研究Hadoop
2010年5月— Avro脫離Hadoop項目,成為Apache頂級項目。
2010年5月— HBase脫離Hadoop項目,成為Apache頂級項目。
2010年5月— IBM提供了基於Hadoop 的大數據分析軟件——InfoSphere BigInsights,包括基礎版和企業版。
2010年9月— Hive( Facebook) 脫離Hadoop,成為Apache頂級項目。
2010年9月— Pig脫離Hadoop,成為Apache頂級項目。
2011年1月— ZooKeeper 脫離Hadoop,成為Apache頂級項目。
2011年3月— Apache Hadoop獲得Media Guardian Innovation Awards 。
2011年3月— Platform Computing 宣布在它的Symphony軟件中支持Hadoop MapReduce API。
2011年5月— Mapr Technologies公司推出分布式文件系統和MapReduce引擎——MapR Distribution for Apache Hadoop。
2011年5月— HCatalog 1.0發布。該項目由Hortonworks 在2010年3月份提出,HCatalog主要用於解決數據存儲、元數據的問題,主要解決HDFS的瓶頸,它提供了一個地方來存儲數據的狀態信息,這使得 數據清理和歸檔工具可以很容易的進行處理。
2011年4月— SGI( Silicon Graphics International )基於SGI Rackable和CloudRack服務器產品線提供Hadoop優化的解決方案。
2011年5月— EMC為客戶推出一種新的基於開源Hadoop解決方案的數據中心設備——GreenPlum HD,以助其滿足客戶日益增長的數據分析需求並加快利用開源數據分析軟件。Greenplum是EMC在2010年7月收購的一家開源數據倉庫公司。
2011年5月— 在收購了Engenio之后, NetApp推出與Hadoop應用結合的產品E5400存儲系統。
2011年6月— Calxeda公司(之前公司的名字是Smooth-Stone)發起了“開拓者行動”,一個由10家軟件公司組成的團隊將為基於Calxeda即將推出的ARM系統上芯片設計的服務器提供支持。並為Hadoop提供低功耗服務器技術。
2011年6月— 數據集成供應商Informatica發布了其旗艦產品,產品設計初衷是處理當今事務和社會媒體所產生的海量數據,同時支持Hadoop。
2011年7月— Yahoo!和硅谷風險投資公司 Benchmark Capital創建了Hortonworks 公司,旨在讓Hadoop更加魯棒(可靠),並讓企業用戶更容易安裝、管理和使用Hadoop。
2011年8月— Cloudera公布了一項有益於合作伙伴生態系統的計划——創建一個生態系統,以便硬件供應商、軟件供應商以及系統集成商可以一起探索如何使用Hadoop更好的洞察數據。
2011年8月— Dell與Cloudera聯合推出Hadoop解決方案——Cloudera Enterprise。Cloudera Enterprise基於Dell PowerEdge C2100機架服務器以及Dell PowerConnect 6248以太網交換機

Hadoop的四大特性(優點)

  1. 擴容能力(Scalable):Hadoop是在可用的計算機集群間分配數據並完成計算任務的,這些集群可用方便的擴展到數以千計個節點中。
  2. 成本低(Economical):Hadoop通過普通廉價的機器組成服務器集群來分發以及處理數據,以至於成本很低。
  3. 高效率(Efficient):通過並發數據,Hadoop可以在節點之間動態並行的移動數據,使得速度非常快。
  4. 可靠性(Rellable):能自動維護數據的多份復制,並且在任務失敗后能自動地重新部署(redeploy)計算任務。所以Hadoop的按位存儲和處理數據的能力值得人們信賴。

Hadoop的版本

Hadoop的版本很特殊,是由多條分支並行的發展着。
1.x:該版本是由0.20.x發行版系列的延續
2.x:該版本是由0.23.x發行版系列的延續
其實Hadoop也就兩個版本1.x和2.x
Hadoop1.x 指的是:1.x(0.20.x)、0.21、0.22
Hadoop2.x 指的是:2.x、0.23.x
注意:高版本不一定包含低版本的特性

董的博客中也解釋了各個版本的問題:
Hadoop版本選擇探討
Hadoop 2.0中的基本術語解釋

Hadoop版本演變圖
紅色:表示企業中用的最多的實際生產版本
綠色:表示企業中用的最多的alpha版本

如何選擇Hadoop版本

當前Hadoop版本比較混亂,讓很多用戶不知所措。實際上,當前Hadoop只有兩個版本:Hadoop 1.0和Hadoop 2.0,其中,Hadoop 1.0由一個分布式文件系統HDFS和一個離線計算框架MapReduce組成,而Hadoop 2.0則包含一個支持NameNode橫向擴展的HDFS,一個資源管理系統YARN和一個運行在YARN上的離線計算框架MapReduce。相比於Hadoop 1.0,Hadoop 2.0功能更加強大,且具有更好的擴展性、性能,並支持多種計算框架。
當我們決定是否采用某個軟件用於開源環境時,通常需要考慮以下幾個因素:

  1. 是否為開源軟件,即是否免費。
  2. 是否有穩定版,這個一般軟件官方網站會給出說明。
  3. 是否經實踐驗證,這個可通過檢查是否有一些大點的公司已經在生產環境中使用知道。
  4. 是否有強大的社區支持,當出現一個問題時,能夠通過社區、論壇等網絡資源快速獲取解決方法。

摘自董的博客






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM