码迷,mamicode.com
首页 > 其他好文 > 详细

如何在MAP/REDUCE中不检查输出路径?

时间:2015-07-11 06:49:40      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:如何在map/reduce中不检查输出路径

前言

如果在REDUCE中并没有涉及到生成HDFS文件,比如只是将一些数据写入REDIS,那么每次都要提供一个不存在的OUTPUT,真是挺麻烦的,有没有机制可以让MAP/REDUCE作业不要检查输出路径?


检查输出路径的机制

经常,我们的输出格式是这样的:


job.setOutputFormatClass(TextOutputFormat.class);


跟踪下TextOutputFormat,扫描下其中的方法,发现没有检查输出路径的方法。


向上检查TextOutputFormat的父类FileOutputFormat其中的方法,发现如下:


技术分享


可以发现我们熟悉的提示文字“Output directory XXX already exists”


那么如果我们提供一个类MyTextOutputFormat extends TextOutFormat 并覆盖这个方法,就可以达到不用检查输出路径了:


技术分享



然后,设置下:


job.setOutputFormatClass(MyTextOutputFormat.class);即可。




本文出自 “努力奋斗” 博客,请务必保留此出处http://zhangfengzhe.blog.51cto.com/8855103/1673024

如何在MAP/REDUCE中不检查输出路径?

标签:如何在map/reduce中不检查输出路径

原文地址:http://zhangfengzhe.blog.51cto.com/8855103/1673024

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!