Hadoop 1.x MapReduce最小驱动配置
2016-04-18 20:35
381 查看
MapReduce中最小驱动配置指的是没有Mapper和Reducer,看如下代码:
针对上述的MapReduce程序,结果分析如下:
通过查看源代码,可以得到默认的mapper和reducer,主要源码类为JobContext:
//查看源码,可以得知如下默认配置
//默认的输入格式
job.setInputFormatClass(TextInputFormat.class);
//default mapper
job.setMapperClass(Mapper.class);
job.setMapOutputKeyClass(LongWritable.class);
job.setMapOutputValueClass(Text.class);
//default reducer
job.setReducerClass(Reducer.class);
job.setOutputKeyClass(LongWritable.class);
job.setOutputValueClass(Text.class);
//默认的输出格式
job.setOutputFormatClass(TextOutputFormat.class);
package org.dragon.hadoop.mr; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.lib.input.FileInputFormat; import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; /** * 最小的MapReduce:不需要Mapper和Reducer * @author Administrator * */ public class MinimalMapReduce { //Mapper //Reducer public static void main(String[] args) throws Exception { args = new String[]{ "hdfs://hadoop-master.dragon.org:9000/opt/data/test/input/simple_file.txt", "hdfs://hadoop-master.dragon.org:9000/opt/data/test/output7/" }; //conf Configuration conf = new Configuration(); //create job Job job = new Job(conf,MinimalMapReduce.class.getSimpleName()); //set job job.setJarByClass(MinimalMapReduce.class); //set in/out path FileInputFormat.addInputPath(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); //submit job boolean isSuccess = job.waitForCompletion(true); //exit System.exit(isSuccess?0:1); } }
针对上述的MapReduce程序,结果分析如下:
* 最小配置的MapReduce:读取输入文件中的内容,输出到指定目录的输出文件中,此时文件中的内容为 * key:原输入文件每行内容的起始位置 * value:输入文件每行的原始内容 * 所以,输出文件的内容为:key + \t + value
通过查看源代码,可以得到默认的mapper和reducer,主要源码类为JobContext:
//查看源码,可以得知如下默认配置
//默认的输入格式
job.setInputFormatClass(TextInputFormat.class);
//default mapper
job.setMapperClass(Mapper.class);
job.setMapOutputKeyClass(LongWritable.class);
job.setMapOutputValueClass(Text.class);
//default reducer
job.setReducerClass(Reducer.class);
job.setOutputKeyClass(LongWritable.class);
job.setOutputValueClass(Text.class);
//默认的输出格式
job.setOutputFormatClass(TextOutputFormat.class);
相关文章推荐
- 详解HDFS Short Circuit Local Reads
- Hadoop_2.1.0 MapReduce序列图
- 使用Hadoop搭建现代电信企业架构
- 单机版搭建Hadoop环境图文教程详解
- hadoop常见错误以及处理方法详解
- hadoop 单机安装配置教程
- hadoop的hdfs文件操作实现上传文件到hdfs
- hadoop实现grep示例分享
- Apache Hadoop版本详解
- linux下搭建hadoop环境步骤分享
- hadoop client与datanode的通信协议分析
- hadoop中一些常用的命令介绍
- Hadoop单机版和全分布式(集群)安装
- 用PHP和Shell写Hadoop的MapReduce程序
- hadoop map-reduce中的文件并发操作
- Hadoop1.2中配置伪分布式的实例
- hadoop上传文件功能实例代码
- java结合HADOOP集群文件上传下载
- 让python在hadoop上跑起来
- 用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试