用Hadoop进行分布式并行编程(一)(注:本文档来自hadoopinchina)基本概念与安装部署级别:初级曹羽中(caoyuz@cn
com),软件工程师,IBM中国开发中心2008年5月22日Hadoop是一个实现了MapReduce计算模型的开源分布式并行编程框架,借助于Hadoop,程序员可以轻松地编写分布式并行程序,将其运行于计算机集群上,完成海量数据的计算
本文将介绍MapReduce计算模型,分布式并行计算等基本概念,以及Hadoop的安装部署和基本运行方法
Hadoop简介Hadoop是一个开源的可运行于大规模集群上的分布式并行编程框架,由于分布式存储对于分布式编程来说是必不可少的,这个框架中还包含了一个分布式文件系统HDFS(HadoopDistributedFileSystem)
也许到目前为止,Hadoop还不是那么广为人知,其最新的版本号也仅仅是0
16,距离1
0似乎都还有很长的一段距离,但提及Hadoop一脉相承的另外两个开源项目Nutch和Lucene(三者的创始人都是DougCutting),那绝对是大名鼎鼎
Lucene是一个用Java开发的开源高性能全文检索工具包,它不是一个完整的应用程序,而是一套简单易用的API
在全世界范围内,已有无数的软件系统,Web网站基于Lucene实现了全文检索功能,后来DougCutting又开创了第一个开源的Web搜索引擎(http://www
org)Nutch,它在Lucene的基础上增加了网络爬虫和一些和Web相关的功能,一些解析各类文档格式的插件等,此外,Nutch中还包含了一个分布式文件系统用于存储数据
从Nutch0
0版本之后,DougCutting把Nutch中的分布式文件系统以及实现MapReduce算法的代码独立出来形成了一个新的开源项Hadoop