MapReduce之Job工具类开发
发表于:2025-01-30 作者:千家信息网编辑
千家信息网最后更新 2025年01月30日,[toc]MapReduce之Job工具类开发在MapReduce程序写Mapper和Reducer的驱动程序时,有很多代码都是重复性代码,因此可以将其提取出来写成一个工具类,后面再写MapReduc
千家信息网最后更新 2025年01月30日MapReduce之Job工具类开发
[toc]
MapReduce之Job工具类开发
在MapReduce程序写Mapper和Reducer的驱动程序时,有很多代码都是重复性代码,因此可以将其提取出来写成一个工具类,后面再写MapReduce程序时都会使用这个工具类。
Job工具类开发
程序代码如下:
package com.uplooking.bigdata.common.utils;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.mapreduce.*;import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;import java.io.IOException;public class MapReduceJobUtil { public static Job buildJob(Configuration conf, Class> jobClazz, String inputpath, Class extends InputFormat> inputFormat, Class extends Mapper> mapperClass, Class> mapKeyClass, Class> mapValueClass, Path outputpath, Class extends OutputFormat> outputFormat, Class extends Reducer> reducerClass, Class> outkeyClass, Class> outvalueClass) throws IOException { String jobName = jobClazz.getSimpleName(); Job job = Job.getInstance(conf, jobName); //设置job运行的jar job.setJarByClass(jobClazz); //设置整个程序的输入 FileInputFormat.setInputPaths(job, inputpath); job.setInputFormatClass(inputFormat);//就是设置如何将输入文件解析成一行一行内容的解析类 //设置mapper job.setMapperClass(mapperClass); job.setMapOutputKeyClass(mapKeyClass); job.setMapOutputValueClass(mapValueClass); //设置整个程序的输出 outputpath.getFileSystem(conf).delete(outputpath, true);//如果当前输出目录存在,删除之,以避免.FileAlreadyExistsException FileOutputFormat.setOutputPath(job, outputpath); job.setOutputFormatClass(outputFormat); //设置reducer,如果有才设置,没有的话就不用设置 if (null != reducerClass) { job.setReducerClass(reducerClass); job.setOutputKeyClass(outkeyClass); job.setOutputValueClass(outvalueClass); } return job; }}
程序
工具
代码
开发
一行
输入
输出
不用
内容
就是
文件
目录
重复性
驱动程序
运行
驱动
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
xmapp是服务器吗
腾讯和平精英服务器怎么样
我的世界玩家服务器有什么用
数据库租赁服务合同标准
网络安全大赛几人
app 数据库验证测试
服务器温度怎么控制
天津服务器经销商
软件开发中可以使用的工具
方舟生存进化手游怎么找服务器
小学网络安全教育测试题
戴尔高性价比服务器
服务器恢复出厂设置还能开机吗
暗黑 繁体 数据库
软件开发公司做财务怎么样
武装突袭进服务器无响应
北京互金新融科技软件开发
棋牌h5软件开发商
网络安全都学习什么
情人节软件开发
数据库技术基于哪一个理论
网络技术 网络安全
智能仓库软件开发定制
工业互联网科技战役庞松涛
数据库怎样设置当前系统时间
重庆合川网络安全宣传
景安 服务器
沈阳软件开发培训哪家好
删除数据库中数据库文件夹
档案网络安全管理