首页 理论教育 MapReduce作业配置说明

MapReduce作业配置说明

时间:2023-06-26 理论教育 版权反馈
【摘要】:在MapReduce框架中,每个集群节点均有一个slave TaskTracker,但仅有一个master JobTracker。应用程序需要提供完成应用本身的map和reduce函数和作业参数的配置,并且需要指定输入/输出数据的路径。然后,JobTracker负责将这些信息分发给slave,调度监控它们的执行,并将执行状态和诊断信息提供给job-client。MapReduce程序的主要作业配置步骤如下。

MapReduce作业配置说明

在MapReduce框架中,每个集群节点均有一个slave TaskTracker,但仅有一个master JobTracker。一个作业的所有处理任务将由master分发给不同的slave,slave负责完成由master所指派的任务,并且master调度和监控这些任务的执行情况。应用程序需要提供完成应用本身的map和reduce函数和作业参数的配置,并且需要指定输入/输出数据的路径。配置信息和作业,例如:jar包和可执行程序等,由Job client提交给JobTracker。然后,JobTracker负责将这些信息分发给slave,调度监控它们的执行,并将执行状态和诊断信息提供给job-client。MapReduce程序的主要作业配置步骤如下。

Configuration conf=getConf();//加载配置文件

Job job=new Job(conf,"MaxTemperature");//job对象控制整个作业的执行,创建MapReduce任务

job.setJarByClass(MaxTemperature.class);//设置主类,通过该类寻找作业执行的jar包

FileInputFormat.addInputPath(job,new Path(arg0[1]));//设置作业数据输入路径

FileOutputFormat.setOutputPath(job,new Path(arg0[1]));//设置作业执行结果输出路径

job.setInputFormatClass(TextInputFormat.class);//默认输入格式,它产生的键类型是LongWritable,值类型是Text。(www.xing528.com)

job.setMapperClass(MyMapper.class);//设置类MyMapper为完成Map任务的类

job.setMapOutputKeyClass(LongWritable.class);//设置map的键输出类型

job.setMapOutputValueClass(Text.class);//设置map的值输出类型

job.setReducerClass(MyReducer.class);//设置类MyReducer为完成Reducer任务的类

job.setOutputKeyClass(LongWritable.class);//设置输出键类型为LongWritablejob.setOutputValueClass(Text.class);//设置输出值类型Text

System.exit(job.waitForCompletion(true)?0:1);//等待程序执行完毕退出

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈