Mryqu's Notes


  • 首页

  • 搜索
close

[Hadoop] 通过MultipleOutputs生成多输出文件

时间: 2014-09-29   |   分类: BigData     |   阅读: 50 字 ~1分钟

即前一博文[Hadoop] 通过MultipleInputs处理多输入文件展示如何处理MapReduce多输入问题,本文将展示一下如何处理MapReduce多输出的方法。

MultipleOutputs示例

MultipleOutputsDemo.java源码

[Hadoop] 通过MultipleOutputs生成多输出文件

Scores.txt

Tomas,100
Edward,81
Henry,59
Gordon,60
James,97
Percy,93
Toby,77
Emily,87
Duke,68
Donald,47
Douglas,35

执行

hadoop jar YquMapreduceDemo.jar MultipleOutputsDemo /user/hadoop/mos_input/scores.txt /user/hadoop/mos_output

测试结果

[Hadoop] 通过MultipleOutputs生成多输出文件

MultipleOutputs分析

普通Driver

|API|Job属性 |—– |Job.setOutputFormatClass|mapreduce.job.outputformat.class示例:org.apache.hadoop.mapreduce.lib.output.TextOutputFormat |Job.setOutputKeyClass|mapreduce.job.output.key.class示例:org.apache.hadoop.io.Text |Job.setOutputValueClass|mapreduce.job.output.value.class示例:org.apache.hadoop.io.IntWritable

使用MultipleOutputs的Driver

|API|Job属性 |—– |MultipleOutputs.addNamedOutput|mapreduce.multipleoutputs
示例:pass fail
mapreduce.multipleoutputs.namedOutput.pass.format
示例:org.apache.hadoop.mapreduce.lib.output.TextOutputFormat
mapreduce.multipleoutputs.namedOutput.pass.key
示例:org.apache.hadoop.io.NullWritable
mapreduce.multipleoutputs.namedOutput.pass.value
示例:org.apache.hadoop.io.Text
mapreduce.multipleoutputs.namedOutput.fail.format
示例:org.apache.hadoop.mapreduce.lib.output.TextOutputFormat
mapreduce.multipleoutputs.namedOutput.fail.key
示例:org.apache.hadoop.io.NullWritable
mapreduce.multipleoutputs.namedOutput.fail.value
示例:org.apache.hadoop.io.Text

通过调用org.apache.hadoop.mapreduce.lib.output.MultipleOutputs.write方法,根据相应NamedOutput相应的OutputFormat、OutputKeyClass和OutputValueClass创建NamedOutput自己的RecordWriter,完成相应的输出。

标题:[Hadoop] 通过MultipleOutputs生成多输出文件
作者:mryqu
声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!

#hadoop# #mapreduce# #multipleoutputs# #源码分析# #示例#
[社交网络分析课] 笔记
[Hadoop] 通过MultipleInputs处理多输入文件
  • 文章目录
  • 站点概览

Programmer & Architect

662 日志
27 分类
1472 标签
GitHub Twitter FB Page
    • MultipleOutputs示例
    • MultipleOutputs分析
© 2009 - 2023 Mryqu's Notes
Powered by - Hugo v0.120.4
Theme by - NexT
0%