认识Hadoop简史

责任编辑:editor007

作者:Markboo

2014-04-02 13:44:10

摘自:Markboo新浪博客

2003年google产品架构发表了一篇论文,简述了google的分布式文件系统,简称GFS。GFS或同类的架构,可以解决网页爬取和索引过程中产生的超大文件的存储需要。2004年他们开始实现开源,也就是Nutch项目,NDFS即Nutch的分布式文件系统。

Hadoop是Apache Lucene的创始人 Doung Cutting 创建的,

Lucene是一个广泛用于文本搜索的系统库。

关于认识Hadoop简史(伍)

Doung Cutting

Hadoop起源于Apache Nutch, 一个开源的网络搜索引擎,也是Apache的Lucene项目的一部分。Hadoop是创始人Doung Cutting的儿子给一头大象起的名字。

Hadoop的子项目及其后续项目所以用的名称也与其本身的功能多数相关,通常以动物的名字。一些小的组件,名称通常具有很好的描述性。比如:jobtracker是用于跟踪MapReduce作业的。从零开始构建一个网络搜索引擎是一个很大的计划,并且往往会遇到很多的问题。不仅是因为编写一个爬虫并索引页面的软件比较复杂,而且,一个这样的项目需要一个专门的团队来实现。项目中也包含许多随时都需要修改的组件,不断的需要开发人员随时对应。

另外,构建一个这样的系统的代价也是非常高的,据Mike Cafarella和Doung Cutting估计,一个支持10亿网页的索引系统单硬件上的投入就要高达50万美元,另外每月还需运维费用3万美元。

  关于认识Hadoop简史(伍)

Mike Cafarell

  Nutch项目起始于2002年,一个可以运行的网页爬取工具和搜索引擎系统很快被开发出来。后来,开发者认为该框架的可扩展度不够,不能解决数十亿网页的搜索问题。2003年google产品架构发表了一篇论文,简述了google的分布式文件系统,简称GFS。GFS或同类的架构,可以解决网页爬取和索引过程中产生的超大文件的存储需要。尤其是GFS能够节省系统管理所花掉的大量时间,比如管理存储节点。

  关于认识Hadoop简史(伍)

  2004年他们开始实现开源,也就是Nutch项目,NDFS即Nutch的分布式文件系统。

2004年,google发表论文介绍了他们的MapReduce系统。

2005年,Nutch开发人员在Nutch上实现了第一个MapReduce系统,并在年中实现了算法完全移植。这样,Nutch的NDFS和MapReduce实现不只是适用于搜索领域。

2006年2月,开发人员将NDFS和MapReduce移出了Nutch形成了Lucene的一个子项目,称为Hadoop。与此同时,创始人Doung加入了yahoo,yahoo将Hadoop发展成一个能够处理Web数据的系统。

2008年2月,Yahoo!宣布其搜索引擎使用的索引是在一个拥有1万个内核的Hadoop集群上构建的。

2008年1月,Hadoop称为Apache的顶级项目。至今,除了Yahoo!外,还有 Facebook等其他公司使用Hadoop架构。

2008年4月,Hadoop打破世界纪录,成为最快的TB级别排序系统。通过一个910个节点的集群,Hadoop在209秒内完成对1TB的数据的排序。

2008年11月,Google的报告中声称,它的MapReduce对1TB排序只用了68秒。

2009年5月,Yahoo!的团队排序用了62秒。

Apache Hadoop

Hadoop是以MapReduce和HDFS而出名的,但是Hadoop实际上是一个组关于使用这个基础平台进行分布式计算和海量数据处理的项目的总称。

关于认识Hadoop简史(伍)

这里列举一下常用的项目:

Common

一组分布式文件系统和通用I/O的组件和结构(序列化,Java RPC和持久化数据结构)。

Avro

一种支持高效,跨语言的RPC以及永久存储数据的序列化系统。

MapReduce

分布式数据处理模型和执行环境,运行于大型商用机集群。

HDFS

分布式文件系统,运行于大型商用机集群。

Pig

一种数据流语言和运行环境,用以检索海量数据集。Pig运行在MapReduce和HDFS的集群上。

Hive

一个分布式,按列存储的数据仓库。Hive管理HDFS中存储的数据,并提供基于SQL的查询语言(由运行时引擎翻译成MapReduce作业)用以查询数据。

HBase

一个分布式,按列存储数据库。HBase使用HDFS作为底层存储,同时支持MapReduce的批量式计算和点查询(随机读取)。

ZooKeeper

一个分布式,可用于性高的协调服务。ZooKeeper提供分布式锁之类的基本服务用于构建分布式应用。

Sqoop

在数据库和HDFS之间高效传输数据的工具。

关于认识Hadoop简史(伍)

作者:Markboo

链接已复制,快去分享吧

企业网版权所有©2010-2025 京ICP备09108050号-6京公网安备 11010502049343号