辅助类GenericOptionsParser,Tool和ToolRunner (1)为什么要用ToolRunner 将MapReduce Job配置参数写到java代码里,一旦变更意味着修改java文件源码.编译.打包.部署一连串事情.当MapReduce 依赖配置文件的时候,你需要手工编写java代码使用DistributedCache将其上传到HDFS中,以便map和reduce函数可以读取.:当你的map或reduce 函数依赖第三方jar文件时,你在命令行中使用”-libjars”参数…
我们在写Hadoop--map/reduce程序时,遇到使用按文件url来分析文件----------多表连接的DistributedCache方式,看不懂使用extends Configured implements Tool的方式,就查了一下http://hadoop.apache.org      上面对该Tool接口及其使用做了说明: @InterfaceAudience.Public @InterfaceStability.Stable public interface Tool   …
本篇内容 在上一篇的"初识"环节,我们已经在本地和Hadoop集群中,成功的执行了几个MapReduce程序,对MapReduce编程,已经有了最初的理解. 在本篇文章中,我们对MapReduce编程进行进一步的了解,包含:配置API.辅助类.调试手段.调优手段. 整体来说,我个人的理解是: (1)本地开发阶段,对于Eclipse开发MapReduce程序来说.是不须要不论什么插件的,和开发普通的Java程序是一样的,通过DEBUG和单元測试排错. (2)Hadoop环境測试阶段.也比…
为了简化命令行方式运行作业,Hadoop自带了一些辅助类.GenericOptionsParser是一个类,用来解释常用的Hadoop命令行选项,并根据需要,为Configuration对象设置相应的取值.通常不直接使用GenericOptionsParser,更方便的方式是:实现Tool接口,通过ToolRunner来运行应用程序,ToolRunner内部调用GenericOptionsParser. 一.相关的类及接口解释 (一)相关类及其对应关系如下: 关于ToolRunner典型的实现方…
为了简化执行作业的命令行.Hadoop它配备了一些辅助类.GenericOptionsParser它是一类.经常用来解释Hadoop命令行选项,并根据需要.至Configuration采取相应的对象设置值. 通常不直接使用GenericOptionsParser,更方便的方式是:实现Tool接口,通过ToolRunner来执行应用程序,ToolRunner内部调用GenericOptionsParser. 一.相关的类及接口解释 (一)相关类及其相应关系例如以下: watermark/2/tex…
为了简化命令行方式运行作业,Hadoop自带了一些辅助类.GenericOptionsParser是一个类,用来解释常用的Hadoop命令行选项,并根据需要,为Configuration对象设置相应的取值.通常不直接使用GenericOptionsParser,更方便的方式是:实现Tool接口,通过ToolRunner来运行应用程序,ToolRunner内部调用GenericOptionsParser. 一.相关的类及接口解释 (一)相关类及其对应关系如下: 关于ToolRunner典型的实现方…
hadoop源代码分析(4)-org.apache.hadoop.util包-GenericOptionsParser类[原创]   一  准备 hadoop版本:1.0.3,GenericOptionsParser所在的包:org.apache.hadoop.util 学习方法:理解GenericOptionsParser这个解析器的使用地方,从构造函数入手,理解GenericOptionsParser整个类的使用情况. 时间:2013-02-21 二  GenericOptionsParse…
1.        MapReduce程序开发步骤 编写map 和 reduce 程序–> 单元测试 -> 编写驱动程序进行验证-> 本地数据集调试 ->  部署到集群运行 用到的工具: Junit.Mockito.Ant 2.        使用Configuration 关键点: 1.  Configuration类可以加载配置文件,包括系统的和自定义的 2.  addResource方法后面的配置文件会覆盖前面的 3.  配置文件的几个特性:name.value.descri…
最近在Ubuntu下配置好了nutch和solr的环境,也用nutch爬取了一些网页,通过solr界面呈现,也过了一把自己建立小搜索引擎的瘾,现在该静下心来好好看看nutch的源码了,先从Inject开始吧~~~ 1.从crawl.java的main函数进入,执行: Configuration conf = NutchConfiguration.create(): 再进入NutchConfiguration(NutchConfiguration负责加载管理nutch的配置文件信息,该类继承自Co…
一.API的配置---Configuration类 API的配置:Hadoop提供了专门的API对资源进行配置,Configuration类的实例(在org.apache.hadoop.conf包)包括配置属性及其值的集合.每个属性是一个String类型,值的类型可能是以以下的多种类型:包括了Java基本类型(如boolean.int.long.float)和其他一些有用的类型.配置从给定资源中读取它们的属性,通常是名-值对构成的结构简单的XML文件 <?xml version="1.0&…