Getting Started with Hadoop, Part 1
December 31st, 2006我一直都对分布式文件系统非常感兴趣,特别喜欢研究如何在庞大的廉价的异构系统集群上进行容错性良好的分布式存储。这些话题总是能吸引我的注意力。记得2002年的时候因公司的需要有机会实践了一把 OpenAFS 和 Coda ,印象深刻,呵呵。好了,闲话少叙,今天将要谈论的是后起之秀 Hadoop 。
Hadoop 是大名鼎鼎的 Lucene 旗下的子项目,它原先是 Nutch 项目的组成部分,于2006年初从 Nutch 中分离出来成为一个独立的项目。Hadoop 其实并非一个单纯用于存储的分布式文件系统,而是一个被设计用来在由普通硬件设备组成的大型集群上执行分布式应用的框架(framework)。Hadoop 包含两个部分:一个分布式文件系统 HDFS (Hadoop Distributed File System),和一个 MapReduce 实现。因此,Hadoop 的目标是为开发分布式应用提供一个框架,而不是像 OpenAFS, Coda 那样为存储提供一个分布式文件系统。搜索引擎就是一种典型的分布式程序,Nutch 就是基于 Hadoop 开发的。
本文的目标是描述如何安装和使用 Hadoop 0.9.2,不涉及如何使用 Hadoop 框架来开发分布式程序(此话题我将在 Part 2 中介绍之)。