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

简介:

前言

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


检查输出路径的机制

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


job.setOutputFormatClass(TextOutputFormat.class);


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


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


wKioL1WfiDiAUQJpAAJrER7Zhmk294.jpg


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


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


wKiom1WflirAqfvbAAKc_uIX4pY185.jpg



然后,设置下:


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


本文转自zfz_linux_boy 51CTO博客,原文链接:http://blog.51cto.com/zhangfengzhe/1673024,如需转载请自行联系原作者


相关文章
|
5天前
|
JavaScript 前端开发
解一下操作数组的方法reduce,some,map,find
解一下操作数组的方法reduce,some,map,find
7 0
|
4月前
|
分布式计算
MapReduce中的Map和Reduce函数分别是什么作用?
MapReduce中的Map和Reduce函数分别是什么作用?
54 0
|
5月前
动态参数+reduce累加stream
动态参数+reduce累加stream
27 0
|
6月前
|
SQL 缓存 分布式计算
map-reduce执行过程
map-reduce执行过程
70 0
|
10月前
分别举例什么情况要使用 combiner,什么情况不使用?
分别举例什么情况要使用 combiner,什么情况不使用?
84 0
|
11月前
|
安全 Java
parallelStream() 踩坑指南,出现null元素,输出list的size不符合预期
parallelStream() 踩坑指南,出现null元素,输出list的size不符合预期
142 0
|
11月前
如何对数组进行一个过滤操作map
如何对数组进行一个过滤操作map
70 0
|
数据采集 Python
如何使用reduce(),filter()对数据进行求积,去除None,空字符串
如何使用reduce(),filter()对数据进行求积,去除None,空字符串
写一个prod()函数,可以接受一个list并利用reduce()求积
写一个prod()函数,可以接受一个list并利用reduce()求积
72 0
写一个prod()函数,可以接受一个list并利用reduce()求积
|
Python
如何读取保存一些list信息的txt,生成有一组名字有规律的list
如何读取保存一些list信息的txt,生成有一组名字有规律的list
153 0
如何读取保存一些list信息的txt,生成有一组名字有规律的list