首页 > 其他 > 详细

hadoop map中获取文件/切片名称

时间:2017-08-30 17:02:59      阅读:329      评论:0      收藏:0      [点我收藏+]
//import org.apache.hadoop.mapreduce.InputSplit;
//import org.apache.hadoop.mapreduce.lib.input.FileSplit;

@SuppressWarnings("rawtypes") public static String getCityFromFileName(org.apache.hadoop.mapreduce.Mapper.Context context) throws IOException{ String city="unkown"; InputSplit inputSplit = context.getInputSplit(); String fileName=((FileSplit) inputSplit).getPath().getName(); city=fileName.split("-")[1]; if(city.equals("dns")||city.equals("3gwap")||city.equals("3gnet")){ city=fileName.split("-")[2].split("_")[0]; } city=city.split("_")[0]; return city; }

需要注意的是:要通过context.getInputSplit() 获取切片信息,job设置时,一定不要合并小文件

hadoop map中获取文件/切片名称

原文:http://www.cnblogs.com/yanghaolie/p/7453974.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!