『教程』Hadoop基础

Posted 万码学堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了『教程』Hadoop基础相关的知识,希望对你有一定的参考价值。

本教程系根据万码学堂崔博士课堂讲义整理,共分四篇连载,带领大家一步步认识Hadoop的基础知识,最后通过实例让大家掌握Hadoop实际应用。喜欢的小伙伴请关注我,后续还会有更多更好的教程送给大家。

Hadoop历史

1.1. Google的三驾马车

Google的伟大之处,不仅因为它建立了一个很好很强大的搜索引擎,而且还在于它创造了3项革命性技术:GFS、MapReduce和BigTable,即所谓的Google三驾马车。

2003年,Google在美国纽约召开的第19届ACM操作系统原理研讨会(Symposium on Operating Systems Principles,SOSP)上,发表了论文《The Google File System》,系统地介绍了Google面向大规模数据密集型应用的、可伸缩的分布式文件系统——GFS。

2004年,Google在美国旧金山召开的第6届操作系统设计与实现研讨会(Operating Systems Design and Implementation,OSDI)上,发表了论文《MapReduce: Simplified Data Processing on Large Clusters》,向全世界介绍了MapReduce系统的编程模式、实现、技巧、性能和经验。

2006年,Google在美国西雅图召开的第7届操作系统设计与实现研讨会上,发表了论文《Bigtable: A Distributed Storage System for Structured Data》,分析了设计用于处理海量数据的分布式结构化数据存储系统BigTable的工作原理。

TIP:上述成果离不开Google一位伟大的科学家、工程师Jeff Dean。网上流传着很多关于Jeff Dean的“惊人真相”,请自行搜索。

1.2. Hadoop的诞生

2000年3月,Doug Cutting开源基于Java的高性能全文检索工具包——Lucene。

2002年10月,Doug Cutting和Mike Cafarella创建了基于Lucene的开源网页爬虫项目Nutch。

网络搜索引擎和基本文档搜索区别就在规模上,Lucene目标是索引数百万文档,而Nutch应该能处理数十亿的网页。因此Nutch就面临了一个极大的挑战,即在Nutch中建立一个层,来负责分布式处理、冗余、故障恢复及负载均衡等等一系列问题。

2004-2005年,受到Google论文的启发,Doug Cutting基于GFS和MapReduce的思想在Nutch项目中实现了一个分布式文件系统NDFS(Nutch Distributed File System)和一个MapReduce计算框架。随后这两个模块被单独拿出来,组成一个独立的项目Hadoop。

2005年,Hadoop作为Lucene的子项目Nutch的一部分正式引入Apache基金会。

2006年1月,Yahoo!雇佣Doug Cutting,并让他和一个专门的团队来一起改进Hadoop,并将其作为一个开源项目。至此,Hadoop项目正式启动以支持MapReduce和HDFS的独立发展。

TIP:关于Doug Cutting它三个项目的名字由来,这个人很有意思,三个项目的名字都来源于他家庭,Lucene是他妻子的中间名也是她外祖母的名字,他儿子在很小的时候总是把吃饭的词叫做Nutch,后来,他又把一个黄色大象毛绒玩具叫做Hadoop,这样大家就明白了为何好多关于Hadoop的资料中都能看到个黄色的大象。

1.3. Hadoop的发展

TIP:Apache Incubator(阿帕奇孵化器)。是旨在成为完全成熟的Apache软件基金会项目的开源项目的通道。目前,所有的Apache项目都需要经过孵化器孵化,满足Apache的一系列质量要求之后才可毕业。从孵化器里毕业的项目,要么独立成为顶级项目,要么成为其他顶级项目的子项目。




关注万码学堂,每天都会进步


以上是关于『教程』Hadoop基础的主要内容,如果未能解决你的问题,请参考以下文章

『教程』Hadoop基础

Hadoop基础教程1Hadoop之服务器基础环境搭建(转)

『教程』Hadoop基础

『教程』Hadoop基础

视频教程:hadoop基础及演练 hadoop视频教程 hadoop从入门到精通的学习

《Hadoop基础教程》之初识Hadoop