简介
Hadoop是一个能够对大量数据进行分布式处理的软件框架。 Hadoop 以一种可靠、高效、可伸缩的方式进行数据处理。Hadoop来源于于Apach Nutch(一个开源的网络搜索引擎),是Apach Lucene(文本搜索引擎库)的一部分。Hadoop的名字不是英文的缩写,他是一个虚构的名字,来自于创始人Doug Cutting孩子的一个大象玩具的名字。
Nutch项目开始于2002年,一个可工作的抓取工具和搜索系统很快浮出水面。但是此时他们意识到,他们的架构无法扩展到数十亿网页的网络。在2003年Google发表的一篇描述分布式文件系统(Google file system 简称GFS)的论文给了他们启发和帮助。论文中称Google正在使用这个系统。可以解决他们在网络抓取过程中产生大量数据文件的存储需求,因此产生了Nutch中的分布式文件系统(NDFS)。在2004年,Google发表了论文,向全世界介绍了MapReduce,MapReduce是一种用于数据处理的编程模型。而Hadoop的另外一个核心模块MapReduce就是这篇论文的一个具体实现。
Nutch中的NDFS和MapReduce实现的应用远不止搜索领域。在2006年2月,他们从Nutch中转移出来一个Lucene一个独立的子项目,称为Hadoop。大约在同一时间,Dong Cutting加入雅虎。雅虎提供了一个专门的团队和资源将Hadoop发展成为一个可在网络上运行的系统。2008年2月雅虎宣布其搜索引擎产品可部署在一个1万个内核的Hadoop集群上。在2008年4月,Hadoop打破世界纪录,称为最快排序1T数据的系统(不到三分钟),击败了前一年的297秒冠军。同年11月Google在报告中称他的MapReduce在执行1T数据排序只用了68秒。在2009年5月,报告称雅虎的团队使用Hadoop对1T数据进行排序只用了62秒。
子项目
HDFS:Hadoop分布式文件系统(Hadoop Distributed File System)
MapReduce:并行计算框架
Hbase:类似于Google BigTable分布式NoSql列数据库
Hive:数据仓库工具,由Facebook贡献
Zookeeper:分布式锁设施,提供类似Google chubby的功能,由Facebook贡献
Avro:数据序列化与格式传输工具
Pig:大数据分析工具,为用户提供多种接口
Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群。
Sqoop:于在HADOOP与传统的数据库间进行数据的传递。