繁体   English   中英

传递列表tp reducer输出

[英]Pass a list tp reducer output

我可以在减速器输出中传递值列表吗?

编码 :-

公共类XXX扩展了Reducer>

我需要输出为“文本列表”值。

有可能通过Map Reduce吗?

您需要执行以下操作。

  1. 通过扩展ArrayList或LinkedList创建自定义列表。
  2. 实现可写接口。 您可以将read方法保留为虚拟实现,并以希望输出看起来像的方式覆盖write方法。
  3. 减速器将“自定义列表”作为输出值,即YourReducer

我认为您的制图师应该像这样

Mapper<LongWritable,Text,Text,ArrayWritable>

减速器应如下所示

Reducer<Text,IntWritable,Text,ArrayWritable>

在两个签名中,请注意ArrayWriteable。

有六个Writable集合类型:Array Writable,ArrayPrimitiveWritable,TwoDArrayWritable,MapWritable,SortedMapWritable和EnumSetWritable。

在键和值ArrayWritable上调用的toString()的默认TextOutputFormat会覆盖其toString()方法,因此,仅使用此集合,就应该获得与您刚才提到的内容接近的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM