hadoop自定义可写

qcuzuvrc  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(389)

我试图在作业的输出中写入多个值。为此,我使用了一个实现接口的自定义可写程序 Writable . 我称之为可写的习惯, CompositeWritable 实现读写两种方法。运行作业时,输出如下所示:

key CompositeWritable@5fdf281b
lean    CompositeWritable@2153b010
likely  CompositeWritable@2153b010

我错过了什么?在作业规范中,我将输出值类设置为 CompositeWritable . 我还错过了其他设置吗?

ymdaylpp

ymdaylpp1#

textoutputformat似乎依赖于可写文件中的tostring方法(参见第80行)。在compositewriteable类上实现tostring的合理重写,例如,可以调用所包含项上的string,并使用分隔符将它们附加在一起。

rqcrx0a6

rqcrx0a62#

你失踪了

@Override
    public String toString() {
        return ___________;
    }

例子:

@Override
        public String toString() {
            return key+","+value;
        }

在这里键和值是分开使用“,”分隔符。你可以使用任何分隔符作为你的愿望。

相关问题