mapreduce 自定义key/value 输出分隔符

来源:互联网 发布:守望先锋源氏cos淘宝网 编辑:程序博客网 时间:2024/05/16 17:51

转载:http://blog.csdn.net/lihuinihao/article/details/17607197

mapreduce 默认情况下 key/value 分隔符为:“\t”
测试的输出如下:



我们可以在代码中进行设置来自定义 key/value 输出分隔符:在代码中添加如下一行代码:

conf.set("mapred.textoutputformat.separator", ";"); //此处以”;“作为分割符,后边介绍为什么这么修改


修改代码后,测试修改结果:




修改原因:
我们checkout   hadoop-1.2.1版本
打开文件:TextOutputFormat.java




我们可以看到如下一行代码:
    String keyValueSeparator= conf.get("mapred.textoutputformat.separator",
                                       "\t");
   代码的意思是:读取设置的key/value输出分隔符,如果没有读取到,默认使用 "\t"
   所以我们就在任务执行前设置名称为:mapred.textoutputformat.separator 的自定义值 即可

0 0
原创粉丝点击