04 2010 档案
摘要:经过上一篇的分析,我们知道了Hadoop的作业提交目标是Cluster还是Local,与conf文件夹内的配置文件参数有着密切关系,不仅如此,其它的很多类都跟conf有关,所以提交作业时切记把conf放到你的classpath中。 因为Configuration是利用当前线程上下文的类加载器来加载资源和文件的,所以这里我们采用动态载入的方式,先添加好对应的依赖库和资源,然后再构建一个URLCla...
阅读全文
摘要:前面我们所分析的部分其实只是Hadoop作业提交的前奏曲,真正的作业提交代码是在MR程序的main里,RunJar在最后会动态调用这个main,在(二)里有说明。我们下面要做的就是要比RunJar更进一步,让作业提交能在编码时就可实现,就像Hadoop Eclipse Plugin那样可以对包含Mapper和Reducer的MR类直接Run on Hadoop。 一般来说,每个MR程序都会有这么...
阅读全文
摘要:Alibaba DFS这个PDF是我从阿里巴巴的《互联网时代的软件革命》这本书里扫描出来,放到Hadoop群里给大家共享的,但时不时发现有人来寻这个PDF,原来在我的小站上有下载链接,但现在挂了,所以在网上貌似没的下了。这里我再上传一次吧,方便想下载的人。 ADFS这个东西到底只是虚构的还是真实存在,我不得而知,请找阿里人询问。 如果这东西侵权或干啥的,请联系我,我撤掉。 >>点...
阅读全文
摘要:通过前面两篇文章的分析,对Hadoop的作业提交流程基本明了了,下面我们就可以开始编写代码模拟这个流程。 第一步要做的是添加Hadoop的依赖库和配置文件到classpath。最常用的方法就是用一个容器先把各个要添加到classpath的文件或文件夹存储起来,后面再作为类加载器的URL搜索路径。 上面的classPath变量就是我们声明用来装载classpath组件的容器。[代码] 由于需要...
阅读全文
摘要:上一篇我们分析了bin/hadoop脚本,知道了提交一个Hadoop作业所需要的基本设置以及真正执行任务提交的类。这一篇我们就来分析这个提交任务的类org.apache.hadoop.util.RunJar,看它内部具体又做了些什么。 RunJar是Hadoop中的一个工具类,结构很简单,只有两个方法:main和unJar。我们从main开始一步步分析。 main首先检查传递参数是否符合要求,然后...
阅读全文
摘要:目录 1、Hadoop 业界资讯......................................... - 1 - 2、Nutch + Hadoop 构建商用分布式搜索引擎的问题探究....... - 5 -3、支持自定义爬虫的Nutch segment 文件存储接口改写.......... - 11 - 4、Nutch 中mapreduce 应用的几个特殊点................
阅读全文
摘要:[代码] 这样的命令,各位玩Hadoop的估计已经调用过NN次了,每次写好一个Project或对Project做修改后,都必须打个Jar包,然后再用上面的命令提交到Hadoop Cluster上去运行,在开发阶段那是极其繁琐的。程序员是“最懒”的,既然麻烦肯定是要想些法子减少无谓的键盘敲击,顺带延长键盘寿命。比如有的人就写了些Shell脚本来自动编译、打包,然后提交到Ha...
阅读全文
摘要:最近看到调度器这一块,发现Hadoop官方文档中有关公平调度器(Fair Scheduler Guide)和容量调度器(Capacity Scheduler Guide)部分的文档还没有汉化,Google了下也未发现有相关汉化,So,我班门弄斧,抛砖引玉一下了。这里先奉上公平调度器的中文版。由于我一直用Cloudera Hadoop 0.20.1+152的版本,所以这个汉化也是基于里面的文档来的。...
阅读全文