Hadoop及其歷史


Hadoop及其歷史

Hadoop進化史

  • Hadoop最早起源於Nutch

img

​ Doug Cutting

  1. 2002年10月,Doug Cutting和Mike Cafarella創建了開源網頁爬蟲項目Nutch,Nutch的設計目標是構建一個大型的全網搜索引擎,包括網頁抓取、索引、查詢等功能,但隨着抓取網頁數量的增加,遇到了嚴重的可擴展性問題——如何解決數十億網頁的存儲和索引問題。。

  2. 2003年10月,Google發表Google File System論文。

  3. 2004年7月,Doug Cutting和Mike Cafarella在Nutch中實現了類似GFS的功能,即后來HDFS的前身。

  4. 2004年10月,Google發表了MapReduce論文。

  5. 2005年2月,Mike Cafarella在Nutch中實現了MapReduce的最初版本。

  6. 2005年12月,開源搜索項目Nutch移植到新框架,使用MapReduce和NDFS在20個節點穩定運行。

  7. 2006年1月,Doug Cutting加入雅虎,Yahoo!提供一個專門的團隊和資源將Hadoop發展成一個可在網絡上運行的系統。

  8. 2006年2月,Apache Hadoop項目正式啟動以支持MapReduce和HDFS的獨立發展。

  9. 2006年3月,Yahoo!建設了第一個Hadoop集群用於開發。

  10. 2006年4月,第一個Apache Hadoop發布。

  11. 2006年11月,Google發表了Bigtable論文,激起了Hbase的創建。

  12. 2007年10月,第一個Hadoop用戶組會議召開,社區貢獻開始急劇上升。

  13. 2007年,百度開始使用Hadoop做離線處理。

  14. 2007年,中國移動開始在“大雲”研究中使用Hadoop技術。

  15. 2008年,淘寶開始投入研究基於Hadoop的系統——雲梯,並將其用於處理電子商務相關數據。

  16. 2008年1月,Hadoop成為Apache頂級項目。

  17. 2008年2月,Yahoo!運行了世界上最大的Hadoop應用,宣布其搜索引擎產品部署在一個擁有1萬個內核的Hadoop集群上。

  18. 2008年4月,在900個節點上運行1TB排序測試集僅需209秒,成為世界最快。

  19. 2008年8月,第一個Hadoop商業化公司Cloudera成立。

  20. 2008年10月,研究集群每天裝載10TB的數據。

  21. 2009 年3月,Cloudera推出世界上首個Hadoop發行版——CDH(Cloudera's Distribution including Apache Hadoop)平台,完全由開放源碼軟件組成。

  22. 2009年6月,Cloudera的工程師Tom White編寫的《Hadoop權威指南》初版出版,后被譽為Hadoop聖經。

  23. 2009年7月 ,Hadoop Core項目更名為Hadoop Common;

  24. 2009年7月 ,MapReduce 和 Hadoop Distributed File System (HDFS) 成為Hadoop項目的獨立子項目。

  25. 2009年8月,Hadoop創始人Doug Cutting加入Cloudera擔任首席架構師。

  26. 2009年10月,首屆Hadoop World大會在紐約召開。

  27. 2010年5月,IBM提供了基於Hadoop 的大數據分析軟件——InfoSphere BigInsights,包括基礎版和企業版。

  28. 2011年3月,Apache Hadoop獲得Media Guardian Innovation Awards媒體衛報創新獎

  29. 2012年3月,企業必須的重要功能HDFS NameNode HA被加入Hadoop主版本。

  30. 2012年8月,另外一個重要的企業適用功能YARN成為Hadoop子項目。

  31. 2014年2月,Spark逐漸代替MapReduce成為Hadoop的缺省執行引擎,並成為Apache基金會頂級項目。

  32. 2017年12月,Release 3.0.0 generally available

Hadoop生態圈

image-20211102100224958

  1. Apache Ambari是一種基於Web的工具,支持Apache Hadoop集群的供應、管理和監控。Apache Ambari 支持HDFS、MapReduce、Hive、Pig、Hbase、Zookeepr、Sqoop和Hcatalog等的集中管理。也是5個頂級hadoop管理工具之一。

  2. Avro™:數據序列化系統

  3. Cassandra是一套開源分布式NoSQL數據庫系統。它最初由Facebook開發,用於儲存收件箱等簡單格式數據,集GoogleBigTable的數據模型與Amazon Dynamo的完全分布式的架構於一身,Facebook於2008將 Cassandra 開源。

  4. chukwa 是一個開源的用於監控大型分布式系統的數據收集系統。這是構建在 hadoop 的 HDFS 和MapReduce框架之上的,繼承了 hadoop 的可伸縮性和健壯性。Chukwa 還包含了一個強大和靈活的工具集,可用於展示、監控和分析已收集的數據。

  5. hive是基於Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張數據庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為MapReduce任務進行運行。

  6. Mahout 提供一些可擴展的機器學習領域經典算法的實現,旨在幫助開發人員更加方便快捷地創建智能應用程序。Mahout包含許多實現,包括聚類、分類、推薦過濾、頻繁子項挖掘。此外,通過使用 Apache Hadoop 庫,Mahout 可以有效地擴展到雲中。

  7. Apache Pig 是一個高級過程語言,適合於使用 Hadoop 和 MapReduce 平台來查詢大型半結構化數據集。通過允許對分布式數據集進行類似 SQL 的查詢,Pig 可以簡化 Hadoop 的使用。

  8. Apache Spark 是專為大規模數據處理而設計的快速通用的計算引擎。Spark是UC Berkeley AMP lab開源的類Hadoop MapReduce的通用並行框架,擁有MapReduce所具有的優點;但是Job中間輸出結果可以保存在內存中,從而不再需要讀寫HDFS,因此Spark能更好地適用於數據挖掘與機器學習等需要迭代的MapReduce的算法。

  9. Tez 是 Apache 最新的支持 DAG 作業的開源計算框架。它允許開發者為最終用戶構建性能更快、擴展性更好的應用程序。Hadoop傳統上是一個大量數據批處理平台。但是,有很多用例需要近乎實時的查詢處理性能。還有一些工作則不太適合MapReduce,例如機器學習。Tez的目的就是幫助Hadoop處理這些用例場景。

  10. ZooKeeper是一個分布式的,開放源碼的分布式應用程序協調服務,是Google的Chubby一個開源的實現,是Hadoop和Hbase的重要組件。它是一個為分布式應用提供一致性服務的軟件,提供的功能包括:配置維護、域名服務、分布式同步、組服務等。

  11. HBase是一個分布式的、高可靠性、高性能、面向列、可伸縮的分布式存儲系統,該技術來源於Fay Chang所撰寫的Google論文“Bigtable:一個結構化數據的分布式存儲系統”。就像Bigtable利用了Google文件系統(File System)所提供的分布式數據存儲一樣,HBase在Hadoop之上提供了類似於Bigtable的能力。

Hadoop官網

http://hadoop.apache.org/

image-20211102101216926

Hadoop Modules

image-20211102101327974

  • Hadoop Common 基礎型功能
  • Hadoop Distributed File System(HDFS) 負責存放數據
  • Hadoop YARN 負責資源的調配
  • *Hadoop Map Reduce 大數據計算框架
  • Hadoop Ozone 數據存放倉庫
  • Hadoop Submarine 機器學習引擎


免責聲明!

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



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