ubuntu 14.04 LTS下Hadoop源代码环境搭建,14.04hadoop


1、几个问题的回答

为什么现在要阅读Hadoop的源代码? 

  • 从源代码的层面去深入地理解Hadoop的架构与设计原理,从而为更好地使用和扩展Hadoop打下坚实的基础。
  • 已经有了一定的知识积累,特别是Java,数据结构和算法,数据库,数据仓库,Linux,并行计算,计算机理论,数据挖掘,机器学习等。

阅读Hadoop的源代码能学到什么?

  • hadoop的原理与实现。
  • 分布式系统的设计原理与实现。
  • Java的标准库和开源工具。      
  • 学习Linux的操作与原理。

前几天把ubuntu 12.04 LTS升级为ubuntu 14.04 LTS,但是对于分析Hadoop源代码来说,差异不是很大。全部过程需要安装JDK,Eclipse,Ant,Hadoop,而JDK和Eclipse的安装就省略了。

  • 下载apache-ant-1.8.3-bin.tar.gzhttp://download.csdn.net/detail/shengshengwang/8111935
  • 下载hadoop-1.0.0.tar.gz:上传权限不够,自己下载即可。
环境变量/etc/profile文件配置,如下所示:
export JAVA_HOME="/home/wss/Java/jdk1.7.0_09"
export JRE_HOME="$JAVA_HOME/jre"
export PATH="$PATH:$JAVA_HOME/bin:$PATH"
export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"

export HADOOP_HOME_WARN_SUPPRESS=1
export HADOOP_HOME="/home/wss/hadoop-1.0.0"
export PATH="$PATH:$HADOOP_HOME/bin:$PATH"

export ANT_HOME="/home/wss/apache-ant-1.8.3"
export PATH="$PATH:$ANT_HOME/bin:$PATH"

2、创建Eclipse项目 解压下载的hadoop-1.0.0.tar.gz,假设解压后的根目录为/home/wss/hadoop-1.0.0,进入项目的根目录,我们开始将代码导入Eclipse,如下所示:
wss@hadoop:~/hadoop-1.0.0$ ant eclipse 
命令运行结束之后,就可以在Eclipse中创建项目了,如下所示:
由于目前只分析Common和HDFS两个模块,在Project -> Properties -> Java Build Path的Source页只保留两个目录,分别是core和hdfs,如下所示:
说明: 完成上述工作以后,Eclipse提示一个错误:“Unbound classpath variable: 'ANT_HOME/lib/ant.jar' in project 'hadoop-1.0.0'”,自行解决。
3、Hadoop的源代码组织 Hadoop 1.0的发行包中,Common、HDFS和MapReduce三个模块还是打包在一起的,它们的实现分别位于core、hdfs和mapred子目录中。源代码目录src下还有若干值得关注的子目录,如下所示:
  • tools:包含Hadoop的一些实用工具的实现,如存档文件har、分布式拷贝工具distcp、MapReduce执行情况分析工具rumen等。
  • benchmarks:包含对Hadoop进行性能测试的两个工具gridmix和gridmix2,通过这些工具,可以测试Hadoop集群的一些性能指标。
  • c++:需要提及的是libhdfs,它通过Java的C语言库界面,实现了一套访问HDFS的C接口。
  • examples:为开发人员提供了一些使用Hadoop的例子,不过这些例子只涉及MapReduce的API。
  • contrib:是contribution的缩写,包含大量Hadoop辅助模块的实现,如在亚马逊弹性计算云上部署、运行Hadoop所需的脚本就在contrib/ec2目录下。
  • test:包含项目的单元测试用例,在该目录中能找到Common、HDFS和MapReduce等模块的单元测试代码。

4、小结 阅读分析Hadoop源代码所必需的开发环境搭建过程,包括:安装与配置JDK、安装与配置Eclipse、安装与配置辅助工具的工作。在上述环境中,从零开始建立一个包含Hadoop Common和HDFS的源码环境,为进一步学习Hadoop源代码做好准备,要保持专注精神,长时间学习Java,深入操作Java。
参考文献: [1] Warning: $HADOOP_HOME is deprecated: http://chenzhou123520.iteye.com/blog/1826002 [2] Hadoop技术内幕:深入解析Hadoop Common和HDFS架构设计与实现原理  [3] .eclipse.templates does not exist: http://blog.csdn.net/duguduchong/article/details/8717000


ubuntu下搭建hadoop开发环境是时出现如下图片的问题,解决

eclipse插件版本很有问题,你可以上网找找别人搭建的环境,一定要hadoop版本和eclipse版本对应,我记得eclipse3.3和hadoop-0.20.2的网上有现成的。

其次如果你是其他版本,需要自己将你开发使用的eclipse结合hadoop的plugin代码编译生成一个eclipse plugin,不过里面会报错,网上也有解决办法,自己找找。

不过我的经验是别浪费时间在这上面了,不如多学习使用些api和原理,或者安装ganglia都比弄这个好
 

怎在一台电脑上进行hadoop的环境搭建与使用 vm714 ubuntu1010想搭建伪分布式的,成功过的给链接

Ubuntu 单个借点伪分布式环境搭建
www.michael-noll.com/...uster/

Ubuntu 两个借点分布式环境搭建
www.michael-noll.com/...uster/

至于在VM中安装Ubuntu,那个应该没啥问题吧,如果ubuntu上默认没安装JDK,需要先安装JDK1.6或者更高级的版本
 

相关内容