Hadoop 之 小象诞生

不少同学抱怨看不懂我之前的技术博客(那是因为多数同学早就脱离了技术的苦海),所以我决定写一些故事性的东西。既然这年头“不说大数据都不好意思和人打招呼”,那就以Hadoop系列开始。


提及Hadoop这一大数据存储和处理工具,自然要从它的爸爸Doug Cutting说起。Doug Cutting不仅仅是Hadoop的创始人,还是大名鼎鼎的搜索引擎工具Lucene的开创者。一个程序员能有一个开源软件为千万人所用,而且历久弥新,已经是十分难得。兼具多个的就更是寥寥了。有类似经历的如Linus Torvalds,即是Linux发明者同时也开发了Git。


2002年,Doug Cutting和他的小伙伴Mike Cafarella开始开发一个网络搜索引擎:Nutch。但是,他们很快意识到最初的实现无法扩展。幸而在2003到2004年,Google的两篇文章GFS(分布文件系统)和MapReduce(分布计算)横空出世。很快Nutch实现算法被移植到使用MapReduce和NDFS (Nutch Distributed File System)来运行。近十年来,Google的不少分布式计算和存储的文章给了工业界启发,很多开源的项目都来自于此。除了GFS, MapReduce,还有BigTableChubby。比起直接开源,Google(至少早起)似乎更喜欢写文章:)当然,聪明的如Doug这般,这点光亮已经足够他灿烂了。


很快,大家就意识到NDFS和MapReduce的价值远远不只是搜索领域,在2006年2月,他们从Nutch转移出来成为一个独立的Lucene子项目,称为Hadoop。Hadoop这个名字不是一个缩写,它是一个虚构的名字。Doug Cutting如此解释:

这个名字是我孩子给他的棕黄色大象玩具命名的。我的命名标准就是简短,容易发音和拼写,没有太多的意义,并且不会被用于别处

Hadoop这头小象就此诞生。可以看到,一个优秀软件的诞生也不是一朝一夕的事情,Hadoop就经历了4年的技术积累。


Doug Cutting也在2006年加入雅虎。正是因为开源和Yahoo的大力支持,Hadoop后来一直顺风顺水,2008年1月,Hadoop已成为Apache顶级项目,2008年4月,Hadoop打破世界纪录,成为最快排序1TB数据的系统。运行在一个910节点的群集,Hadoop在209秒内排序了1 TB的数据(还不到三分半钟)。当然江山代有才人出,如今Spark 用190个节点,234分钟sort 1000TB的数据。对于spark这个后起之秀,以后另谈。


经历了初期的快速增长,Doug意识到很多行业,而不仅仅是像Google,Yahoo这样的大型互联网公司需要Hadoop,这促使他之后加盟了Cloudera,提供专业的Hadoop维护和咨询服务。而后,Hadoop的世界逐渐出现了三足鼎立的局面。欲知后事如何,且听下回分解。

推荐阅读更多精彩内容