如何将list< text>作为Map器输出传递?

jaxagkaj  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(309)

我正在解决Map缩小的问题。但有一点我卡住了,我怎么能通过 List<Text> 作为 Mapper output ? 有没有可能?如果是的话,那我们怎么知道 configuration 关于 Mapper output class ?

4xrmg8kj

4xrmg8kj1#

可以将arraywritable类用作Map器类中的值对象。请参考下面的代码片段以了解Map器类,

ArrayWritable arrayWritable = new ArrayWritable(Text.class);

Text [] textValues = new Text[2];
textValues[0] = new Text("value1");
textValues[1] = new Text("value1");

arrayWritable.set(textValues );
context.write(key , arrayWritable );

在驱动程序类中设置值类,如下所示,

job.setMapOutputValueClass(ArrayWritable.class);

相关问题